POJ1012 Joseph
2013-05-13 23:39
309 查看
题目链接: http://poj.org/problem?id=1012
题目分析:
经典的约瑟夫环问题。
我在这里使用数组来实现算法,还可以通过循环链表来实现,也很简单。
源代码:
题目分析:
经典的约瑟夫环问题。
我在这里使用数组来实现算法,还可以通过循环链表来实现,也很简单。
源代码:
/*约瑟夫环*/ #include <iostream> using namespace std; int main() { int Joseph[14] = {0}; //Joseph环 int k; while(cin>>k) { if (k == 0) { break; } if (Joseph[k]) { cout<<Joseph[k]<<endl; continue; } int num; //人数 num = 2 * k; int kill[30] = {0}; //杀掉的人 int m = 1; //报数 for (int i = 1; i <= k; i++) { kill[i] = (kill[i - 1] + m - 1) % (num - i + 1); //从1开始计数计算Joseph环算法 if (kill[i] < k) //杀死的是好人 { m ++; i = 0; } } Joseph[k] = m; cout<<m<<endl; } return 0; }
相关文章推荐
- POJ 1012 Joseph
- NYOJ 191 && POJ 1012 Joseph(约瑟夫环问题)
- POJ 1012 Joseph
- POJ 1012 Joseph
- 【POJ】1012 Joseph
- POJ 1012 Joseph
- POJ 1012 Joseph
- poj1012-Joseph
- POJ - 1012 joseph (约瑟夫打表)
- 【原】 POJ 1012 Joseph 约瑟夫 解题报告
- POJ1012 Joseph
- POJ 1012 Joseph(打表题)
- poj 1012 Joseph (约瑟夫问题)
- POJ 1012 Joseph解题报告
- poj 1012 Joseph (约瑟夫问题)
- POJ 1012 Joseph
- poj 1012 Joseph
- poj 1012 Joseph(约瑟夫环求每次出圈人的序号)
- poj1012-Joseph(输出出列编号模板)
- POJ 1012 joseph