题目大意:给定n和k个整数,求mod n加法下的群G的一个子群G',满足a[1]~a[k-1]都不在群中而a[k]在群中
首先易证G'一定是一个循环群
证明:显然若a在群中则a的逆元在群中
那么我们就有了减法运算
由群的封闭性可得若a和b都在群中则gcd(a,b)一定在群中
不妨设g为G'中所有元素的gcd 那么群G''={0,g,2g,...}一定是G'的一个子群
由于G'-...
分类:
其他好文 时间:
2015-03-03 20:43:06
阅读次数:
275
求欧拉函数φ\varphiO()√O(\sqrt)时间复杂度的算法首先我们要求φ\varphi(x),可以先将其分解成∏(apii)\prod(a_i^{p_i})的形式,其中aa是素数。
然后可以推导出公式φ\varphi(x)=∏(apii?api?1i)\prod(a_i^{p_i}-a_i^{p_i-1})
然后这个可以实现为φ\varphi(x)=x/∏(ai?1)x/\prod(a_...
分类:
其他好文 时间:
2015-03-03 16:40:48
阅读次数:
345
题意:有n个人排队,要求每个人不能排在自己父亲的前面(如果有的话),求所有的排队方案数模1e9+7的值。分析:《训练指南》上分析得挺清楚的,把公式贴一下吧:设f(i)为以i为根节点的子树的排列方法,s(i)表示以i为根的子树的节点总数。f(i) = f(c1)f(c2)...f(ck)×(s(i)-...
分类:
其他好文 时间:
2015-03-02 23:40:15
阅读次数:
196
hdu 5177 (1e18范围的卡特兰数)
题意:
求第n个卡特兰数,模3814697265625 (5^18)
限制:
有20组数据,1
思路:
1. 卡特兰数的表达式:
ans = 1/(n+1) * C(2*n,n)
-> ans = 1/(n+1) * (2n)! / n! / n! ---1式
2. 因为要模5^18,求逆元要求互质,所以先把"...
分类:
其他好文 时间:
2015-02-22 23:08:39
阅读次数:
736
思路比较裸,但是要把答案存到哈希表里面,这里需要一定技巧,否则会被K=1且点权全是1的数据卡飞。预处理乘法逆元。TLE了一天。换了种点分治的姿势……#pragma comment(linker,"/STACK:102400000,102400000")#include#include#include...
分类:
其他好文 时间:
2015-02-15 12:03:27
阅读次数:
192
BSGS BSGS裸题,嗯题目中也有提示:求a^m (mod p)的逆元可用快速幂,即 pow(a,P-m-1,P) * (a^m) = 1 (mod p) 1 /************************************************************** 2 ...
分类:
其他好文 时间:
2015-02-06 16:37:22
阅读次数:
131
乘法逆元就是求一个 a/b = c(mod m)在已知a%m , b%m 的条件下 求c的解 1 #include 2 #include 3 4 using namespace std; 5 #define ll long long 6 const int N = 100005; 7 int ...
分类:
其他好文 时间:
2015-02-02 07:03:46
阅读次数:
155
x * 2m = l (mod n + 1),故x = l * (2m)-1(mod n + 1)只需要求一下逆元什么的就做完了,注意乘法要用"快速加"的方法。。。否则会爆long long 1 /***************************************************...
分类:
其他好文 时间:
2015-02-02 00:41:34
阅读次数:
202
题目链接:传送门题目要求:求S(2004^x)%29。题目解析:#include #include #include #include #include #define mod 29using namespace std;typedef long long ll;ll mpow(ll x,ll k)...
分类:
移动开发 时间:
2015-01-25 18:13:53
阅读次数:
198