第一次在优快云上发表文章,刚好最近在面试,故借此分享下,欢迎拍砖。
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//定义猴子总数
int count = 10;
//定义数数间隔
int span = 4;
//定义当前猴子的指向
int pointer = 0;
int[] intArr = new int[count];
for (int i = 1; i < count + 1; i++)
{
intArr[i - 1] = i;
}
do
{
for (int j = 0; j < intArr.Length; j++)
{
if (intArr[j] == -1) continue;
pointer++;
if (pointer == span)
{
intArr[j] = -1;
pointer = 0;
}
}
} while (intArr.Count(p => p > 0) != 1);
Console.WriteLine(intArr.Single(p => p > 0));
}
}
}