POJ 1286 Necklace of Beads(polya计数、burnside定理)
来源:互联网 发布:1701端口是干嘛的 编辑:程序博客网 时间:2024/05/22 14:47
Description
Beads of red, blue or green colors are connected together into a circular necklace of n beads ( n < 24 ). If the repetitions that are produced by rotation around the center of the circular necklace or reflection to the axis of symmetry are all neglected, how many different forms of the necklace are there?
Input
The input has several lines, and each line contains the input data n.
-1 denotes the end of the input file.
-1 denotes the end of the input file.
Output
The output should contain the output data: Number of different forms, in each line correspondent to the input data.
Sample Input
45-1
Sample Output
2139
使用三种颜色珠子串成 一个n颗珠子的项链,项链旋转和翻转相同的视为同样方案,问有多少不同方案数
#include <iostream>using namespace std;int gcd(int a,int b){ return b==0?a:gcd(b,a%b);}long long power(long long p,long long n){ long long ret=1; while(n) { if(n&1)ret=ret*p; p=p*p; n=n/2; } return ret;}int main(){ int n; while(cin>>n) { if(n==-1)break; else if(n==0) cout<<"0"<<endl; else { long long ans=0; for(int i=1; i<=n; i++) ans=ans+power(3,gcd(n,i)); if(n&1)//是奇数,有n个包含(n/2+1)个循环节的循环群 ans=ans+n*power(3,n/2+1); else ans=ans+(n/2)*(power(3,n/2+1)+power(3,n/2)); ans=ans/(2*n);//别忘了除以置换群的总个数,这里由于既翻转又旋转所以是2*n cout<<ans<<endl; } } return 0;}
0 0
- POJ 1286 Necklace of Beads(polya计数、burnside定理)
- POJ--1286[Necklace of Beads] Polya定理
- POJ 1286 Necklace of Beads Polya定理
- poj 1286 Necklace of Beads(Polya定理)
- poj 1286 Necklace of Beads -----polya计数
- poj 1286 Necklace of Beads polya计数
- poj 1286 Necklace of Beads 【polya计数】
- POJ 1286-Necklace of Beads(Polya计数)
- POJ 1286 Necklace of Beads && POJ 2409 Polya计数原理
- POJ 题目1286 Necklace of Beads(Polya定理)
- poj Necklace of Beads 1286 (polya定理)置换群
- 【POJ 1286】Necklace of Beads(polya定理)
- poj 1286 Necklace of Beads(polya 定理)
- 【POJ 1286】Necklace of Beads(Polya 定理)
- POJ 1286 Necklace of Beads (Polya定理)
- POJ 1286 polya计数、burnside定理
- poj 1286 Necklace of Beads (polya)
- poj 1286 Necklace of Beads (polya)
- Intelij Idea cannot find symbol exception
- google翻译API公开测试
- 小心使用C语言realloc()函数
- 黑马程序员——C语言基础语法(关键字、标识符、注释符、变量、作用域、printf函数、Scanf函数)
- 关于C++标准库中的remove_copy,copy,remove,replace函数
- POJ 1286 Necklace of Beads(polya计数、burnside定理)
- 查看FILEZILLA的快速连接密码
- 网络管理之企业如果如何防范、排除ARP攻击
- PHP中文件读、写、删的操作(PHP中对文件和目录操作)
- Python自然语言处理(一)--利用NLTK自带方法完成NLP基本任务
- java jackson fastjson gson json-lib
- OpenDaylight: Programming Flows with the REST Interface and cURL
- VGA时序及其原理
- 陈怡暖:非农携手英国大选,超级周点燃金银“红五月”