五个水手在岛上发现一堆椰子,先由第1个水手把椰子分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。然后,第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。以后第3、4个水手依次按此方法处理。最后,第5个水手把剩下的椰子分为等量的5堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个。
输出格式要求:“y = %d\n”
#include
int Meiyitianzuikaishideshumu (int n);
int main(int argc, const char * argv[]) {printf(" %d\n",Meiyitianzuikaishideshumu(4));Meiyitianzuikaishideshumu(4);return 0;
}
int Meiyitianzuikaishideshumu (int n)
{int xn=n,x;for (int i = 1; i != 6; i++) {x = xn*5/4+1;xn = x;if ((xn-1)%5 != 0) {return Meiyitianzuikaishideshumu(n+4);}}return x;
}