[CSP-S模拟测试]:春思(数学)
蝶恋花·春景
花褪残红青杏小。燕子飞时,绿水人家绕。枝上柳绵吹又少。天涯何处无芳草!
墙里秋千墙外道。墙外行人,墙里佳人笑。笑渐不闻声渐悄。多情却被无情恼。
(本词是伤春之作,写春景清新秀丽。同时,景中又有情理,我们仍用何处无芳草(知音)以自慰自勉。苏轼的多情却被无情恼,也不仅仅局限于对佳人的相思。)
题目传送门(内部题28)
输入格式
两个非负整数$A,B$。
输出格式
仅一个正整数,表示答案。
样例
样例输入:
2 3
样例输出:
15
数据范围与提示
样例解释:
$2^3=8$,而$8$的因子有$1,2,4,8$,而$1+2+4+8=15$。
数据范围:
$A\leqslant {10}^{12},B\leqslant {10}^{12}$。
题解
见到数学题就是化式子(弃掉)。
$A^B=p_1^{k_1}\times p_2^{k_2}\time ...\times p_n^{k_n}$
$ans=(1+p_1+p_1^2+...+p_n^{k_1})(1+p_2+p_2^2+...+p_n^{k_2})...(1+p_n+p_n^2+...+p_n^{k_n})$
之后我们发现,可以直接用等比数列求和公式$S_n=a_1\times \dfrac{1-q^n}{1-q}$即可。
时间复杂度:$\Theta(\log^2 n)$。
期望得分:$100$分。
实际得分:$100$分。
代码时刻
#include<bits/stdc++.h>
using namespace std;
long long A,B;
long long pri[50],cnt[50],wzc[50];
long long qpow(long long x,long long y)
{
long long res=1;
while(y)
{
if(y&1)res=res*x%9901;
x=x*x%9901;
y>>=1;
}
return res;
}
void pre_work()
{
long long sqr=sqrt(A);
for(int i=2;i<=sqr&&A^1;i++)
{
if(A%i)continue;
pri[++pri[0]]=i;
while(!(A%i))
{
A/=i;
cnt[pri[0]]+=B;
}
}
if(A^1)
{
pri[++pri[0]]=A;
cnt[pri[0]]=B;
}
}
int main()
{
scanf("%lld%lld",&A,&B);
pre_work();
for(int i=1;i<=pri[0];i++)
wzc[i]=(((qpow(pri[i]%9901,cnt[i]+1)-pri[i])%9901+9901)*qpow((pri[i]-1)%9901,9899)+1)%9901;
wzc[0]=1;
for(int i=1;i<=pri[0];i++)
wzc[0]=wzc[0]*wzc[i]%9901;
printf("%lld",wzc[0]);
return 0;
}
rp++
[CSP-S模拟测试]:春思(数学)的更多相关文章
- [考试反思]0729NOIP模拟测试10
安度因:哇哦. 安度因:谢谢你. 第三个rank1不知为什么就来了.迷之二连?也不知道哪里来的rp 连续两次考试数学都占了比较大的比重,所以我非常幸运的得以发挥我的优势(也许是优势吧,反正数学里基本没 ...
- 0823NOIP模拟测试赛后总结
考了两场感觉虚了... NOIP模拟测试30 分着考的. 就只有T2的美妙的暴力拿分了,60分rank10,挂了. T1是一道sb题,爆零了十分遗憾. 许多人都掉进了输出格式的坑里,C没大写.少个空格 ...
- Android单元测试与模拟测试详解
测试与基本规范 为什么需要测试? 为了稳定性,能够明确的了解是否正确的完成开发. 更加易于维护,能够在修改代码后保证功能不被破坏. 集成一些工具,规范开发规范,使得代码更加稳定( 如通过 phabri ...
- [开源]微信在线信息模拟测试工具(基于Senparc.Weixin.MP开发)
目前为止似乎还没有看到过Web版的普通消息测试工具(除了官方针对高级接口的),现有的一些桌面版的几个测试工具也都是使用XML直接请求,非常不友好,我们来尝试做一个“面向对象”操作的测试工具. 测试工具 ...
- 安装nginx python uwsgi环境 以及模拟测试
uwsgi帮助文档: http://uwsgi-docs-cn.readthedocs.io/zh_CN/latest/WSGIquickstart.html http://uwsgi-docs.re ...
- 【模拟】【数学】CSU 1803 2016 (2016湖南省第十二届大学生计算机程序设计竞赛)
题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1803 题目大意: 给定n,m(n,m<=109)1<=i<=n,1& ...
- 利用Python中的mock库对Python代码进行模拟测试
这篇文章主要介绍了利用Python中的mock库对Python代码进行模拟测试,mock库自从Python3.3依赖成为了Python的内置库,本文也等于介绍了该库的用法,需要的朋友可以参考下 ...
- 转 C#实现PID控制的模拟测试和曲线绘图
C#实现PID控制的模拟测试和曲线绘图 本文分两部分,一部分是讲PID算法的实现,另一部分是讲如何用动态的曲线绘制出PID运算的结果. 首先,PID算法的理论模型请参考自动控制理论,最早出现的是模 ...
- Mockito:一个强大的用于Java开发的模拟测试框架
https://blog.csdn.net/zhoudaxia/article/details/33056093 介绍 本文将介绍模拟测试框架Mockito的一些基础概念, 介绍该框架的优点,讲解应用 ...
随机推荐
- mybatis多对多
这里我们以用户 user 表和 角色role 表为例,假定一个用户能被分配成多重角色,而一种角色也能分给多个用户,故用户和角色构成多对多的关系 需求:给定角色id,查询这个角色所属的所有用户信息 ①. ...
- Django csrf,xss,sql注入
一.csrf跨站请求伪造(Cross-site request forgery) CSRF的攻击原理:简单说就是利用了高权限帐号(如管理员)的登录状态或者授权状态去做一些后台操作,但实际这些状态并没有 ...
- 应该用forEach改变数组的值吗? 原生JS forEach()和map()遍历的异同点
应该用forEach改变数组的值吗? https://segmentfault.com/q/1010000013170900?utm_source=index-hottest 由于js中的数组是引用类 ...
- ubuntu下修改子网掩码
1.修改网络配置 修改 /etc/netplan/01-network-manager-all.yaml 文件 vi /etc/netplan/01-network-manager-all.yaml ...
- java_第一年_JavaWeb(5)
HttpServletRequest对象 通过HttpServletRequest对象可获取客户端在访问服务器时,请求的所有信息 获取客户机的信息 getRequestURL:返回客户端发出请求时的完 ...
- python——datetime模块
一.datetime模块介绍 (一).datetime模块中包含如下类: 类名 功能说明 date 日期对象,常用的属性有year, month, day time 时间对象 datetime 日期时 ...
- 【TWRP】使用adb sideload线刷ROM的方法
本教程详细介绍 手机刷三方ROM 之前需要安装的 TWRP 这个神器工具 楼主的手机是小米,所以此教程以小米手机为例.其他手机原理类似 第一步,解锁引导程序 访问小米的官方解锁网站并申请解锁权限. 等 ...
- 用Fusion Log诊断同一版本冲突问题解决
处理方法,修改注册表 Add the following values to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion Add: DWORD Force ...
- 攻防世界--insanity
测试文件:https://adworld.xctf.org.cn/media/task/attachments/d2a7dde552e647688230e80b2767b912 1.准备 获得信息: ...
- 解决MySQL在导入大文件时候,出现MySQL Server has gone away的问题
编辑/etc/my.cnf文件,在[myslqd]节点,添加 max_allowed_packet = 64M 随后重启MySQL即可.