그 문제에 도전하는 C프로그램이다.
#include
#include
long long evenodd(long long);
long long length(long long);
int main(){
long long i,leng,t,keep;
leng=1ll;
keep=1;
i=1000000ll;
while(i){
t=length(i);
if(leng<=t){
leng=t;
keep=i;
}
i–;
}
printf(“%lld has length of %lld\n”,keep,leng);
}
long long evenodd(long long n){
if(n%2ll==0ll){
return n/2ll;
}
else{
return n*3ll+1ll;
}
}
long long length(long long l){
long long leng=1;
long long i=l;
while(i-1){
i=evenodd(i);
leng++;
}
printf(“%lld, %lld\n”,leng,l);
return leng;
}

snowall 에 응답 남기기응답 취소