求和(同余定理)
来源:互联网 发布:域名ftp根目录设置 编辑:程序博客网 时间:2024/04/29 21:15
百度百科 同余定理 欧拉,小费马,中国剩余定理
http://baike.baidu.com/link?url=LXZ1iNqtSZLlsmYnE_cCq_AnKtFKgo8RETByCBmAqwFSnHNEVUb4f6DtOer8GsYg-w-GWZe5oQ3hnqfg9GTpTq
题目意思:
给定a和n,计算a+aa+aaa+aaaa+...+a...a(n个a) 的和。 输入描述:测试数据有多组,以文件结尾。每行输入a,n(1<=a,n<=1000000)。输出描述:由于结果可能比较大,所以请输出答案mod 1000000007。
http://student.csdn.net/mcs/programming_challenges
题目分析:
同余定理:
s=0;
abc&MOD=((a*10%MOD+b%MOD)*10%MOD+c%MOD)%MOD:
//迭代形式
s=(s*10%MOD+a%MOD)%MOD
s=(s*10%MOD+b%MOD)%MOD
s=(s*10%MOD+c%MOD)%MOD
abc%MOD=s:
此题需要注意的是,链接的a可能不是一位数,一次需要将a写入字符串(同余)进行操作,见代码注释。
AC代码:
- *同于定理,需要注意每一次链接的a不一定是一位数
- *例如输入100 3
- *1、s=0; s1[3]="100";(a写入字符串)
- *2、s=(s*10%MOD+(s1[j]-'0'))%MOD;
- *3、下一次链接下一个数,只需要用s继续链接a即可
- *4、每一次用sum+=s;
- */
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<cmath>
- #define MOD 1000000007
- using namespace std;
- int main()
- {
- int a,n;
- while(cin>>a>>n){
- char s1[10];
- sprintf(s1,"%d",a);//将a写入字符串以便于进行逐个取余,(用同余定理)
- int len=strlen(s1);
- long long sum=0,s=0;
- for(int i=0;i<n;i++){
- for(int j=0;j<len;j++){//每次将数字a分成为每一位取余与上一个数链接
- s=(s*10%MOD+(s1[j]-'0'))%MOD;
- }
- sum=(sum%MOD+s%MOD)%MOD;
- //printf("%s\n",s2);
- }
- cout<<sum<<endl;
- }
- return 0;
- }
题目意思:
一个很简单的问题,求1^p+2^p+3^p+……+n^p的和。
<pre name="code" class="cpp">#include <iostream>#include<cstdio>#include<cstring>#include<cmath>#define MOD 100003using namespace std;int mod(int a,int b, int d){ int t=1; if(b==0) return 1; if(b==1) return a%d; t=mod(a,b>>1,n); // t=mod(a,b/2,d); t=t*t%d; if(b%2==1){ //if(b&1) t=t*a%d; } return t;}int main(){ int a=2,b=1; int res=0; for(int i=1;i<=a;i++) { int t=(mod(i,b,MOD))%MOD; res=(res+t)%MOD; } cout<<res<<endl; return 0;}
0 0
- 求和(同余定理)
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 大数同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余定理
- 同余模定理
- 同余定理
- 同余模定理
- JavaScript中bind、call、apply函数用法详解
- Android——Handler学习(简单计时器例子)
- 位操作基础篇之位操作全面总结
- 关于InputFormat的数据划分、Split调度、数据读取问题
- 黑马程序员——Objective-C学习之set方法和get方法
- 求和(同余定理)
- Foundation框架中一些常用类
- hdu 5062 Beautiful Palindrome Number( dp )
- C++ Primer Plus读书笔记
- Android 自定义控件打造史上最简单的侧滑菜单
- FFmpeg源代码结构图 - 解码
- hdu 3397 Sequence operation
- OTT运营网络优化(一)
- curl爬虫