ACDream - Power Sum
先上题目:
Power Sum
Problem Description
Input
第一行一个数T( <= 10),表示数据总数
然后每行给出3个数n,m,p(1 <= n <= m <= 10^18, 1 <= p <= 10^6, p是质数
Output
Sample Input
2
1 1 11
3 2 11
Sample Output
1
3
Hint

#include <cstdio>
#include <cstring>
#include <iostream>
#define LL long long
#define MAX 1000002
using namespace std; LL n,m,p,ti; bool f[MAX];
LL mm[MAX];
LL ans,rr,r; LL Fast_Mod(LL i,LL t){
LL a = ;
while(t){
if(t&) a = i*a%p;
i = (i%p)*(i%p)%p;
t>>=;
}
return a;
} void solve1(){
ans=;
memset(f,,sizeof(f));
for(int i=;i<=p;i++) mm[i]=;
LL u;
f[]=;
for(LL i=;i<=p;i++){
if(!f[i]){
mm[i] = Fast_Mod(i,m);
for(LL j=i+i;j<=p;j+=i){
f[j]=;
u = j;
while(u%i==){
u/=i;
mm[j]=mm[j]*mm[i]%p;
}
}
}
ans = (ans + mm[i])%p;
if(i<=r) rr=ans;
}
} void solve2(){
ans=;
memset(f,,sizeof(f));
for(int i=;i<=r;i++) mm[i]=;
LL u;
f[]=;
for(LL i=;i<=r;i++){
if(!f[i]){
mm[i] = Fast_Mod(i,m);
for(LL j=i+i;j<=r;j+=i){
f[j]=;
u = j;
while(u%i==){
u/=i;
mm[j]=mm[j]*mm[i]%p;
}
}
}
ans = (ans + mm[i])%p;
}
} int main()
{
int t;
//freopen("data.txt","r",stdin);
scanf("%d",&t);
while(t--){
scanf("%lld %lld %lld",&n,&m,&p);
ti = n/p;
r = n%p;
rr=;
if(ti!=){
solve1();
ans = (ans*ti)%p;
ans = (ans+rr)%p;
}else{
solve2();
}
printf("%lld\n",ans);
}
return ;
}
Power Sum
ACDream - Power Sum的更多相关文章
- Power Sum   竟然用原根来求
		
Power Sum Time Limit: 20000/10000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) SubmitS ...
 - acdream Divide Sum
		
Divide Sum Time Limit: 2000/1000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) SubmitSta ...
 - ACdream: Sum
		
Sum Time Limit: 2000/1000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) SubmitStatisticN ...
 - acdream 1431 Sum vs Product
		
Sum vs Product Time Limit: 4000/2000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) Submi ...
 - ACdream 1431——Sum vs Product——————【dfs+剪枝】
		
Sum vs Product Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) S ...
 - ACDream - Lowbit Sum
		
先上题目: C - Lowbit Sum Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others ...
 - hdu3208 Power of Integer
		
/** 题目:H - Power of Integer 链接:https://vjudge.net/contest/152887#problem/H 题意:给出区间[a, b],问你区间[a, b]所 ...
 - 加州大学伯克利分校Stat2.3x Inference 统计推断学习笔记: FINAL
		
Stat2.3x Inference(统计推断)课程由加州大学伯克利分校(University of California, Berkeley)于2014年在edX平台讲授. PDF笔记下载(Acad ...
 - JavaScript基础--简单功能的计算器(十一)
		
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
 
随机推荐
- sqlserver 创建维护计划失败(SQL Server: 14234 错误)自动备份数据库计划
			
创建维护计划失败(SQL Server: 14234 错误) (2011-06-25 14:44:24) 转载▼ 标签: 杂谈 分类: MSSQL 错误信息:对于 JobStep ' testBak ...
 - 使用Android Studio build tensorflow/examples/android——直接用android studio即可
			
使用Android Studio 可以在Android Studio中直接打开tensorflow/examples/android,但是需要配置好你的gradle.sdk.ndk gradle必须要 ...
 - 79.员工薪水报表 Extjs 页面
			
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" ...
 - git 设定全局ignore
			
创建: 2017/08/08 位置: $HOME/.config/git/ignore git/ignore 要自建 内容 https://github.com/github/gitignore ...
 - lowbit( )运算
			
--------开始-------- lowbit (n) 定义为非负整数n在二进制表示下“最低位的1及其后面所有的0构成的数值. 比如: n = 10 的二进制下为1010,则lowbit (n) ...
 - Django day05 视图层之 (HttpRequest) \ (HttpResponse) \ (JsonResponse) 对象
			
一:视图层之HttpRequest对象 # 前台Post传过来的数据,包装到POST字典中 # request.POST # 前台浏览器窗口里携带的数据,包装到GET字典中 # request.GET ...
 - sql 系统函数
			
--查看表备注SELECT a.column_id AS No, a.name AS 列名, isnull(g.[value],'-') AS 说明 FROM sys.columns a left j ...
 - Eclipse  每次ctrl-c ctrl-v 就变慢?
			
继续闲着,所以继续写 大小: 60.7 KB 查看图片附件
 - Android点击跳转到淘宝的某一商品详情页或者某一店铺页面
			
最近项目的有个需求是点击购买资料按钮进入淘宝界面,简单分析一下,如果用户手机有淘宝就打开淘宝的页面,没有的话也可以选择使用webView进行展示,还是使用手机浏览器进行展示. 判断有无淘宝的代码就不贴 ...
 - 用DIV遮罩解决checkbox勾选无效的问题
			
在前端开发的过程中,遇到一种情况,需要勾选,为了用户的操作便捷就将click事件放到了DIV上.(其中使用了knockout.js) 代码大概如下: <div id="one" ...