简单数论
杋楼
这个作者很懒,什么都没留下…
展开
-
HDU 1006 Biorhythms (中国剩余定理)
题解思路:比较裸的中国剩余定理https://blog.csdn.net/niiick/article/details/80229217 #include<cstdio>#include<iostream>#include<cstring>#include<queue>#include<algorithm>...转载 2019-02-21 16:39:35 · 153 阅读 · 0 评论 -
HDU 4291 A Short problem 矩阵快速幂 循环节
题解思路:构造矩阵,矩阵乘法计算还是t;需要找循环节; (注意因为是复合函数,不可以在里面取mod)暴力跑只有可以找到g(222222224)%1e9==g(0)%1e9;所以 g(g(n)%222222224)%1e9==g(g(n));之后还可以跑出2个循环节从内到外240 183120 222222224 1e9+7#include<cstd...转载 2019-02-18 15:42:03 · 106 阅读 · 0 评论 -
欧拉(线性)筛 && Miller_Rabin 测试素数
void make_prime()//欧拉筛{ is_prime[1]=is_prime[0]=true; for(int i=2;i<=1e6;i++) { if(!is_prime[i]) { prime[++tot]=i; } for(int j=1;j<=tot&...转载 2019-02-28 21:14:49 · 220 阅读 · 0 评论 -
Ural Timus 1009 K-based Numbers (dp+矩阵快速幂+快速乘)
题解思路:首先这此题是不准出现前导0和连续俩个位为0;也就是 如果是101进制,表示(100)10是(100)100 是有效的;首先dp[i]表示第i位有多少个有效数字;若i-1位为0 有效的数字 dp[i-2]*(k-1);若i-1位不为0 有效的数字 dp[i-1]*(k-1);所以 dp[i][j]=(dp[i-2]+dp[i-1])*(k-1);数据非常大 2...转载 2019-02-20 08:52:31 · 141 阅读 · 0 评论 -
Codeforces Round 718C Sasha and Array (矩阵线段树)
题解思路:线段树维护,用矩阵求斐波那契值,tree和lazy都要存成矩阵来降低时间复杂度#include<iostream>#include<cstdio>#include<algorithm>#include<cmath>#include<cstring>#include<map>#includ...转载 2019-02-20 14:39:07 · 107 阅读 · 0 评论 -
poj 2115 C Looooops(同余方程)
题解思路:简单整理一下题意,就是让输出Cx≡(B-A)%(1<<k) 的最小非负整数解;用ex_gcd求解即可;n要强转为ll ex_gcd:ax+by=c;ax+by=gcd(a,b)=gcd(b,a%b)=bx'+(a-a/b*b)y'ax+by=bx'+(a-a/b*b)y'ax+by=ay'+b(x'-a/b*y')x=y' y=...转载 2019-02-21 08:44:20 · 114 阅读 · 0 评论 -
Codeforces Round #499 (Div. 2) E. Border(贝祖定理)
题解思路:对于每个啊a[i]先对k取余;贝祖定理可知若 a1*x1+a2*x2+.....+an*xn==c;则 c|gcd(a1,a2,a3.....an);所以ans=(gcd*(0->k-1))%k;#include<iostream>#include<cstdio>#include<algorithm>#includ...转载 2019-02-21 10:25:58 · 138 阅读 · 0 评论