poj 1286 Necklace of Beads【polya定理+burnside引理】
2018-07-04 11:17
525 查看
和poj 2409差不多,就是k变成3了,详见
还有不一样的地方是记得特判n==0的情况不然会RE
#include<iostream> #include<cstdio> using namespace std; long long n,ans; long long ksm(long long a,long long b) { long long r=1; while(b) { if(b&1) r=r*a; a=a*a; b>>=1; } return r; } long long gcd(long long a,long long b) { return !b?a:gcd(b,a%b); } int main() { while(scanf("%lld",&n)&&n!=-1) { if(!n) { puts("0"); continue; } ans=(n&1)?ksm(3,n/2+1)*n:ksm(3,n/2+1)*n/2+ksm(3,n/2)*n/2; for(int i=1;i<=n;i++) ans+=ksm(3,gcd(i,n)); printf("%lld\n",ans/2/n); } return 0; }
相关文章推荐
- POJ 1286 Necklace of Beads(Polya定理)
- poj 1286 Necklace of Beads(Polya定理)
- poj1286 Necklace of Beads(polya定理)
- POJ 1286 Necklace of Beads (Polya定理)
- POJ 1286 Necklace of Beads(polya计数、burnside定理)
- poj_1286 Necklace of Beads(置换群Polya定理)
- poj 2409 Let it Bead && poj 1286 Necklace of Beads(Polya定理)
- POJ1286:Necklace of Beads(POLYA定理应用)
- poj 1286 Necklace of Beads(polya 定理)
- POJ 1286-Necklace of Beads(Polya定理-旋转+翻转 串项链)
- poj 1286 Necklace of Beads & poj 2409 Let it Bead(初涉polya定理)
- POJ 题目1286 Necklace of Beads(Polya定理)
- 【POJ 1286】Necklace of Beads(Polya 定理)
- Polya 定理 (附POJ 1286 Necklace of Beads 解题报告)
- poj Necklace of Beads 1286 (polya定理)置换群
- poj 1286 Necklace of Beads & poj 2409 Let it Bead(初涉polya定理)
- 【POJ 1286】Necklace of Beads(polya定理)
- poj 1286 Necklace of Beads(polya)
- pku 1286 Necklace of Beads polya定理
- poj 1286 Necklace of Beads (polya)