1001. 害死人不偿命的(3n+1)猜想 (15)
1001 #include<stdio.h> int n = 0; int cnt = 0; int steps(int n) { if (n==1) { return cnt; } else if (n%2) { cnt++; return steps((3*n+1)/2); } else { cnt++; return steps(n/2); } } //递归,别用循环,你不知道会有多少次。 int main(void) { scanf("%d",&n); printf("%d",steps(n)); return 0; }

浙公网安备 33010602011771号