没有登录
中国开发网: 论坛: 程序员情感CBD: 贴子 790822
JoJo
看起来很简单,写起来还是花了一点功夫的
public static int CalcMonkeyKing(int total, int seek)
{
List<bool> monkeys = new List<bool>(new bool[total]);
int cNumbers = total;
int cSeek = 0;
int idx = 0;
while (cNumbers > 1)
{
if (cSeek == (seek - 1))
{
monkeys[idx] = true;
cSeek = 0;
cNumbers--;
}
else
cSeek++;
int nextIdx = monkeys.GetRange(idx + 1, monkeys.Count - idx - 1).FindIndex(m => m == false);
idx = nextIdx < 0 ? monkeys.FindIndex(m => m == false) : nextIdx + idx + 1;
}
return monkeys.FindIndex(m => m == false) + 1;
}

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录