洛谷 U5122 T2-power of 2(费马小定理)】的更多相关文章

U5122 T2-power of 2 题目提供者胡昊 题目描述 是一个十分特殊的式子. 例如: n=0时 =2 然而,太大了 所以,我们让对10007 取模 输入输出格式 输入格式: n 输出格式: % 10007 输入输出样例 输入样例#1: 2 输出样例#1: 16 说明 n<=1000000 /* 费马小定理. 2^p-1%p=1(p为质数). so 2^p-1在%p的剩余系下为1. so 在该系下p-1=0. so 2^n=2^(n%(p-1)). */ #include<iostr…
洛谷题目传送门 蒟蒻惊叹于一道小小的数论题竟能涉及这么多知识点!不过,掌握了这些知识点,拿下这道题也并非难事. 题意一行就能写下来: 给定\(N,G\),求\(G^{\sum \limits _{d|N}C(N,d)}(\mod999911659)\) 乍一看,指数这么大,要怎么处理好呢?上费马小定理. 平时用费马小定理求逆元用多了,\(a^{p-2}\equiv inv(a)(\mod p)\),搞得蒟蒻差点忘了它原本的样子\(a^{p-1}=1(\mod p)\),那原式的指数\(\sum…
类似的因为模数比较小的坑还有卢卡斯定理那道,也是有时候逆元会不存在,因为整除了.使用一些其他方法避免通过逆元. https://www.luogu.org/fe/problem/P1593 有坑.一定要好好理解费马小定理等逆元存在的条件.费马小定理求逆元的条件是p是质数且a不为0,扩展欧几里得算法的条件是a,m互质. 那么上面用费马小定理求等比数列的分母的逆元的时候,就没有判断a不为0.而他们也不互质所以也不能使用扩展欧几里得算法. 其实当a为0的时候这个退化为等差数列. #include<bi…
费马小定理 描述 若\(p\)为素数,\(a\in Z\),则有\(a^p\equiv a\pmod p\).如果\(p\nmid a\),则有\(a^{p-1}\equiv 1\pmod p\). 证明 费马小定理的证法有很多,此处介绍3种 证法一 摘自:<初等数论> 冯志刚 著,有改动 此处用归纳法证明. 当\(a=1\)时,原命题显然成立. 设\(a=n\)时命题成立,即\(n^p\equiv n\pmod p\),故\(n^p-n\equiv 0\pmod p\). 考虑二项式系数\(…
题目大意: 给定k,找到一个满足的a使任意的x都满足 f(x)=5*x^13+13*x^5+k*a*x 被65整除 推证: f(x) = (5*x^12 + 13 * x^4 + ak) * x 因为x可以任意取 那么不能总是满足 65|x 那么必须是 65 | (5*x^12 + 13 * x^4 + ak) 那么就是说 x^12 / 13 + x^4 / 5 + ak / 65 正好是一个整数 假设能找到满足的a , 那么将 ak / 65 分进x^12 / 13 + x^4 / 5中得到…
A/B Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 10383    Accepted Submission(s): 8302 Problem Description 要求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973)(我们给定的A必能被B整除,且gcd(B,9973) = 1).   Input 数据的第一行是…
题目大意:求$fib(2^n)$ 就是求fib矩阵的(2^n)次方%p,p是质数,根据费马小定理有 注意因为模数比较大会爆LL,得写快速乘法... #include<bits/stdc++.h> #define ll long long #define MOD(x) ((x)>=mod?(x-mod):(x)) using namespace std; ; ; ][];mtx(){memset(mp, , sizeof(mp));}}ans, base; ll n, T; inline…
Invoker Problem Description On of Vance's favourite hero is Invoker, Kael. As many people knows Kael can control the elements and combine them to invoke a powerful skill. Vance like Kael very much so he changes the map to make Kael more powerful.  In…
题目传送门 题目大意: 给定一个素数p,让你重载加法运算和乘法运算,使(m+n)p=mp+np,并且 存在一个小于p的q,使集合{qk|0<k<p,k∈Z} 等于集合{k|0<k<p,k∈Z}. 然后输出两个矩阵,第一个矩阵输出i+j的值,第二个矩阵输出i*j的值.(题意好难懂,你们怎么都看懂了!!) 思路: 由费马小定理得到,当p是质数的时候,ap-1 ≡ 1(mod p),两边同乘以a,也就是说当ap和a在取模p的时候相等 所以(m+n)p=m+n=mp+np(乘法为x*x%p…
题目链接:https://nanti.jisuanke.com/t/38352 发现规律之后就是算ans=2^(n-1)+4^(n-1).但是注意到n十分大是一个长度为1e5的数字.要想办法降幂. 我们观察费马小定理:a^(p-1)%p=1.发现对于质数取模,a^(p-1)是一个循环节(因为算出来等于1),可以忽略掉不算. #include<bits/stdc++.h> using namespace std; ; ; typedef long long LL; char s[N]; LL p…