/*****
题目不难,注意后面用else 就可以了,不需要再用if判断,因为一个数(除了0)不是偶数就是奇数
******/
#include <iostream> using namespace std; int main() { int n,x=0; cin>>n; while(n!=1){ if (n%2==0){ n=n/2; x++; } else { n=(3*n+1)/2; x++; } } cout << x<< endl; return 0; }
本文介绍了一个简单的算法,用于计算一个特定整数序列的长度。通过不断将数字除以2(如果为偶数)或者乘以3加1再除以2(如果为奇数),直到数字变为1为止,计数每一步操作。此算法适用于任何正整数输入。
499

被折叠的 条评论
为什么被折叠?



