在一个神话故事中,有一只小兔住在一个周长为一千米的圆形神湖旁,A.B两点把这个神湖分成两部分,已知小兔从B点出发,沿逆时针方向绕神湖做跳跃运动,它每跳8分之3千米休息一次,如果跳到A点正好休息,那么就会经过特别通道AB滑倒B点,从B点继续跳。它每经过一次特别通道,神湖半径就扩大一倍,现知小兔共休息1000次,这是神湖周长是多少千米?(AB为圆的直径)
现在要求编写程序求结果:
NSInteger C = 1000; // 周长 初始值为 1000,单位:m
NSInteger b = 0; // 用于记录上次到达A点跳的次数
for (int a = 1; a <= 1000; a++) {
if ((a-b)*375%(C/2) == 0) {
// if (a*375%C==C/2) {
C = 2*C; // 周长翻倍
b = a;
}
}
NSLog(@"神湖的周长是 %ld 米",C);
我是这么写的,不知道有简便方法不?请各位看官不吝赐教