UVa 305 / POJ 1012 Joseph (如何得到约瑟夫环的下一个位置?)
来源:互联网 发布:linux echo<> 编辑:程序博客网 时间:2024/06/10 02:51
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=241
http://poj.org/problem?id=1012
注意代码中的递推式并不能指出实际的位置,但是要让m是满足题意的,这个位置(在减一映射后)必须>=k
当然你也可以打表实现。
/*0.079s*/#include<bits/stdc++.h>using namespace std;int solve(int k){int m, pos, n = k << 1, i, next;///注意为了取模的方便,一开始所有人的编号减一for (m = k;; m++){pos = m % n;if (pos >= k && pos < n){///开始对所有的bad guy行刑,注意已经行刑了一个pos位置的bad guyfor (i = 1; i < k; ++i){next = (pos + m) % (n - i); /// 人越来越少,所以模越来越小if (next < k || next >= n) break; /// 错误,选了一个good guypos = next;}if (i == k) break;}}return m + 1;}int main(){int k, ans[14];for (int i = 1; i < 14; ++i)ans[i] = solve(i);while (scanf("%d", &k), k)printf("%d\n", ans[k]);return 0;}
0 0
- UVa 305 / POJ 1012 Joseph (如何得到约瑟夫环的下一个位置?)
- poj 1012 Joseph(约瑟夫环)
- Poj 1012 Joseph (约瑟夫环)
- Joseph - acm.uva.305(约瑟夫环)
- poj 1012 -- Joseph (约瑟夫环)
- poj 1012 Joseph 约瑟夫环变形
- POJ 1012 Joseph 变形约瑟夫环
- POJ 1012 Joseph 约瑟夫问题
- POJ 1012 Joseph 约瑟夫问题
- uva 305 Joseph(约瑟夫环解+打表)
- UVA 305 Joseph (约瑟夫环 打表)
- poj 1012 & hdu 1443 Joseph(约瑟夫环变形)
- POJ 题目1012Joseph(数学,约瑟夫环)
- NYOJ 191 && POJ 1012 Joseph(约瑟夫环问题)
- POJ 1012 Joseph(约瑟夫环)(枚举)
- NYOJ 191 && POJ 1012 Joseph(约瑟夫环问题)
- poj 1012 Joseph(约瑟夫环求每次出圈人的序号)
- PKU-1012 Joseph (约瑟夫环)
- Java中子类和父类间的调用关系
- UVa:1424 Salesmen
- websphere6.1 配置sqlserver数据源
- java加载文件的方式
- KeychainItemwrapper生成设备唯一标识
- UVa 305 / POJ 1012 Joseph (如何得到约瑟夫环的下一个位置?)
- 黄河旋风第一天上班
- hdu1754(线段树)
- Linux u-boot加载过程
- ReactiveCocoa 关于在arm64真机运行的问题解决
- 基于Android 平台简易即时通讯的研究与设计
- Python通过文件头来判断文件的真实类型
- vijos1103校门外的树
- Objective-C学习——中文URL编码和解码