ACM_快速幂
LzyRapX
Just For Fun .
展开
-
快速幂取模
利用二进制扫描的方法快速的计算ab mod c,显然用常规方法计算74237 mod 4233计算量过大。基本原理:(a×b)mod c=((a mod c)×b)mod c例如:35 mod 7=3(101)2 mod 7=((3(100)2 mod 7)×3)mod 7=((9(10)2 mod 7)×3)mod 7=(((9 mod 7)(10)2 mod 7)×3)mod原创 2016-03-03 21:55:05 · 772 阅读 · 0 评论 -
HDU 2197 本原串 (数学+容斥)
题目链接: HDU 2197题意: 由0和1组成的串中,不能表示为由几个相同的较小的串连接成的串,称为本原串,有多少个长为n(n<=100000000)n(n<=100000000)的本原串? 答案mod2008\mod2008. 例如,100100100100不是本原串,因为他是由两个100100组成,而11011101是本原串。题解: 我们考虑一下容斥原理,长度为nn的01串的总数为2原创 2017-06-02 13:45:31 · 514 阅读 · 0 评论 -
51nod 1135 原根 (数论)
题目链接: 原根例题求模素数$P$原根的方法:对素因子分解,即是$P-1$的标准分解式,若恒有 成立,则就是的原根。(对于合数求原根,只需把换成即可)。代码:#include<bits/stdc++.h> using namespace std;int p[100010];int t = 0;//http://blog.csdn.net/acdreamers/article/detail原创 2017-05-20 14:02:06 · 562 阅读 · 0 评论 -
Problem S4: Interesting Numbers 加强版 (数论)
Problem Description We call a number interesting, if and only if: 1. Its digits consists of only 0, 1, 2 and 3, and all these digits occurred at least once. 2. Inside this number, all 0s occur befor原创 2017-03-30 10:12:24 · 1149 阅读 · 0 评论 -
HDU 2065 "红色病毒"问题 ( 泰勒级数推导 )
"红色病毒"问题Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6023 Accepted Submission(s): 2539Problem Description医学界发现的新病毒因其蔓延速度和Interne原创 2016-10-01 17:12:18 · 763 阅读 · 0 评论 -
HDU 5833 Zhu and 772002 (高斯消元)
Zhu and 772002Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 706 Accepted Submission(s): 240Problem DescriptionZhu and 772002 are原创 2016-08-15 14:02:00 · 587 阅读 · 0 评论 -
HDU 5793 A Boring Question (找规律+快速幂)
A Boring Question题目链接:点我打开链接Source2016 Multi-University Training Contest 6 题意:用m个不大于n的数构成一个序列,对每个序列求C(kj+1,kj)的连乘积。求出所有可能的序列,累加这些连乘积。题解:打表找规律啊。f(n,m)f(1,2)=3; f(1,6)=7; f(2,2原创 2016-08-05 11:17:41 · 622 阅读 · 0 评论 -
HDU 5780 BestCoder Round #85 gcd (数论---欧拉函数)
gcdTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 125 Accepted Submission(s): 41Problem DescriptionLittle White learned the grea原创 2016-07-31 15:51:55 · 689 阅读 · 0 评论 -
次方求模
次方求模时间限制:1000 ms | 内存限制:65535 KB难度:3描述求a的b次方对c取余的值 输入第一行输入一个整数n表示测试数据的组数(n每组测试只有一行,其中有三个正整数a,b,c(1=输出输出a的b次方对c取余之后的结果样例输入32 3 53 100 1011 12345 12345样例原创 2016-03-11 10:36:01 · 733 阅读 · 0 评论 -
HDU 1420 Prepared for New Acmer(快速幂取模)
Prepared for New AcmerTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 8404 Accepted Submission(s): 3223Problem Description集训进行了将近2个原创 2016-05-05 17:44:42 · 581 阅读 · 0 评论 -
HDU 1395 2^x mod n = 1(快速幂取模)
2^x mod n = 1Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 15722 Accepted Submission(s): 4871Problem DescriptionGive a number n原创 2016-05-04 19:55:43 · 518 阅读 · 0 评论 -
HDU 1061 Rightmost Digit(快速幂取模)
Rightmost DigitTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 45296 Accepted Submission(s): 17031Problem DescriptionGiven a po原创 2016-04-17 19:31:07 · 624 阅读 · 1 评论 -
HDU 1097 A hard puzzle(快速幂取模)
A hard puzzleTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 38370 Accepted Submission(s): 13705Problem Descriptionlcy gives a原创 2016-04-18 21:01:00 · 526 阅读 · 0 评论 -
HDU 2035 人见人爱A^B(快速幂取模 )
人见人爱A^BTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 34030 Accepted Submission(s): 23080Problem Description求A^B的最后三位数表示的整数。说明原创 2016-05-02 20:52:29 · 647 阅读 · 0 评论 -
矩阵快速幂
矩阵 快速幂矩阵的快速幂是用来高效地计算矩阵的高次方的。将朴素的o(n)的时间复杂度,降到log(n)。这里先对原理(主要运用了矩阵乘法的结合律)做下简单形象的介绍:一般一个矩阵的n次方,我们会通过连乘n-1次来得到它的n次幂。但做下简单的改进就能减少连乘的次数,方法如下:把n个矩阵进行两两分组,比如:A*A*A*A*A*A => (A*原创 2016-04-09 15:28:40 · 1453 阅读 · 0 评论 -
ACdream 1007 a + b (数学+快速幂)
题目链接: ACdream 1007 题目: 题解:不说了….看代码吧…AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;const ll mod = 10000000007LL;ll q_mod(ll a, ll b) //a^b { ll ans = 0; while(b)原创 2017-06-22 18:22:03 · 492 阅读 · 0 评论