#include<stdlib.h>
using namespace std;
int m,n;
struct ans
{
int num;
int t;
}p[10000];
void test(struct ans *p)
{
for(;p->num!=1;p->t++)
{
p->num%2==0 ? \
p->num=p->num/2 : p->num=p->num*3+1;
}
//cout<<p->t<<endl;;
}
void input(void)
{
cout<<"Input the num:"<<endl;
cin>>m>>n;
for(int i=0;i<=n-m;i++)
{
p[i].num=m+i;
}
}
int s_max(void)
{
for(int i=0;i<=n-m;i++)
{
test(&p[i]);
}
int max=p[0].t;
for(i=0;i<=n-m;i++)
{
if(p[i].t>max)
max=p[i].t;
}
return max;
}
void main()
{
input();
cout<<s_max()<<endl;
}
----------------解决方案--------------------------------------------------------
这代码不就是最朴素,效率最低下的写法么
[color=white]
----------------解决方案--------------------------------------------------------
的确,编程不可能一蹴而就,而是一个长期的过程,真正的高手不在于学了多少,而是在于做了多少
----------------解决方案--------------------------------------------------------
相信自己的决定,走自己的路,管他妈的什么老师~~~
----------------解决方案--------------------------------------------------------