数 3 游戏 2
2018-07-13 本文已影响0人
Ridiculous_one
题目
有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 3 报数),凡报到 3 的人退出圈子,问最后留下的是原来的几号。
解答
public class WinnerGame {
public static void main(String []args) {
WinnerGame wg = new WinnerGame();
System.out.println( wg.getWinner(758) );
}
public int getWinner(int n) {
int M = 3;
int s = 0;
for (int i = 2; i <= n; ++i)
s = (s+M)%i;
return s+1;
}
}