数论
文章平均质量分 69
ac-data
这个作者很懒,什么都没留下…
展开
-
同余定理巧用2(+递推)
点击打开链接 (a*b)%c=((a%c)*(b%c))%c; (a+b)%c=((a%c)+(b%c))%c; 与斐波那契结合: #include #include #include #include #define N 35 #define M 1314520 #include //bitset using namespace std; int s[250]; vo原创 2012-11-19 09:07:07 · 724 阅读 · 0 评论 -
递推与组合数(OJ451)
问题介绍: 假设一共有N个光棍,其中有M个没有抽到自己的纸条,求发生这种情况一共有多少种可能.。 输入每行包含两个整数N和M(1输出对于每个测试实例,请输出一共有多少种发生这种情况的可能,每个实例的输出占一行。 样例输入 2 23 2 样例输出 13 解决要点(1) 计算组合数:(Cmn:从M个人中挑出N个人) 在写程序时有个简单的方法,就是使用i和j两个变量分别原创 2012-11-18 20:15:14 · 1332 阅读 · 0 评论 -
巧用同余定理
对于M%n,若M=a+b M%n = (a%n+b%n)%n 题目分析:对于一个位数小于1000000的自然数,求其对10003取余的结果 运用同余定理,即 s = 0 用a[1000000]存储输入自然数 for(i:0-n)//n为位数 s = (s*10+a[i])%10003;原创 2012-11-18 20:59:20 · 490 阅读 · 0 评论