摘要: http://poj.org/problem?id=2154poj 2154:Colorhttp://blog.sina.com.cn/s/blog_6f71bea30100opru.html大意:n种颜色的珠子可组成多少种长度为n的项链?这题和2409 类似,不同之处在于,只考虑旋转,不考虑翻转;因此相对前面两个题目应该说是更简单,但一看数据范围,就不是这么回事了,2409完全可以直接循环处理,但这题目n最大达100000000,显然会TLE,故需寻求更佳的解决方案。用欧拉函数进行优化:旋转:顺时针旋转i格的置换中,循环的个数为gcd(i,n),每个循环的长度L为n/gcd(i,n)。如果枚 阅读全文
posted @ 2011-02-16 16:26 AndreMouche 阅读(1138) 评论(0) 推荐(0)
摘要: POJ 2409 Let it Bead算法核心:polya 计数法,burnside定理http://blog.sina.com.cn/s/blog_6f71bea30100opru.html大意:珠子的颜色有c种,问可组成多少种长度为s的项链?分两种情况讨论:旋转:n种旋转方法每种旋转i个格(1#includeconst int N = 35;bool prime[N];void init(){ int i,j; memset(prime,true,sizeof(prime)); for(i=2;ib) { r=a;a=b;b=r; } while(a) { r=b%a; ... 阅读全文
posted @ 2011-02-16 16:23 AndreMouche 阅读(641) 评论(0) 推荐(0)