hdu 1032 The 3n+1 problem

来源:互联网 发布:安卓手机运行java应用 编辑:程序博客网 时间:2024/06/08 08:26

题目

这道题,搞了一个多小时,感觉不是很难,但是重在理解上,

刚开始,没仔细对题:the maximum cycle length over all numbers between i and j. ,在i,和j之间的所有数中最大的周期循环,理解成了,i和j这两个数中最大的周期循环

第二,题中明明说 all integers n such that 0 < n < 1,000,000,但是n=0居然也可以AC反而用while (~scanf("%d%d",i,j),i,j)却不能AC

郁闷

#include <stdio.h>int main(){int n,m,n1,m1;int i,max,a,b,t;while(~scanf("%d%d",&n,&m)){ n1=n;m1=m;if(n>m){t=n;n=m;m=t;}max=0;for(a=n;a<=m;a++){b=a;i=0;while(a!=1){if(a%2==0){a=a/2;i++;}else{a=3*a+1;i++;}}a=b;if(max<i)max=i; }printf("%d %d %d\n",n1,m1,max+1);}return 0;}


0 0
原创粉丝点击