当前位置: 代码迷 >> C语言 >> 我的编程路
  详细解决方案

我的编程路

热度:332   发布时间:2008-06-09 22:31:00.0
#include<iostream>
#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]
----------------解决方案--------------------------------------------------------
的确,编程不可能一蹴而就,而是一个长期的过程,真正的高手不在于学了多少,而是在于做了多少
----------------解决方案--------------------------------------------------------
相信自己的决定,走自己的路,管他妈的什么老师~~~
----------------解决方案--------------------------------------------------------
  相关解决方案