#include<stdio.h>
static int c, d;
int dw(int a[], int n)
{
int i = 0;
if (d == n - 1)
for (i = 1; i <= n; i++)
{
if (a[i] == 0)
return i;
}
else
{
for (i = 1; i <= n; i++)
{
if (a[i] == 0)
{
c++;
if (c % 3 == 0)
{
a[i] = 1;
d++;
}
}
}
return dw(a, n);
}
}
int main()
{
int a[1001] = { 0 };
int n = 0, i = 0, c = 0;
scanf("%d", &n);
printf("%d", dw(a, n));
system("pause");
}
1,定义两个全局变量 c,d;c是为了把猴子围成一个圈,d是判断出来猴子的个数
2,对于这个题 熟练了递归的用法 先找到一个出口;