讨论 / 谁能告诉我哪里错了? 239
coldffire 2013-05-05 01:21:00
点我顶贴 收藏 删除
Unaccepted

测评机: Xeost[5]

得分: 90分

提交日期: 2010-8-19 17:36:00

有效耗时: 2767毫秒

测试结果1: 通过本测试点|有效耗时188ms

测试结果2: 通过本测试点|有效耗时63ms

测试结果3: 通过本测试点|有效耗时47ms

测试结果4: 通过本测试点|有效耗时47ms

测试结果5: 通过本测试点|有效耗时47ms

测试结果6: 通过本测试点|有效耗时93ms

测试结果7: 通过本测试点|有效耗时766ms

测试结果8: 通过本测试点|有效耗时734ms

测试结果9: 通过本测试点|有效耗时782ms

测试结果10: 测试结果错误.错误结果为:353

367

611

593

611

549

0

0

0

0

正确结果应为:353

367

611

593

611

549

443

549

474

642

提交代码: view sourceprint?

#include <iostream>

using namespace std;

int n,ii;

int t,a,b;

__int64 B[101],m,nn;

int main()

{

cin>>t;

for(int i=1;i<=t;i++)

{

m=0;

cin>>a>>b;

for(int j=a;j<=b;j++)

{

ii=0;nn=j;

while(nn!=1)

{

ii++;

if(nn%2==0) nn/=2;

else nn=nn*3+1;

}

if(ii>m) m=ii;

}

B[i]=m;

}

for(int i=1;i<t;i++)

cout<<B[i]<<endl;

cout<<B[t];

}

#1 我是白痴@2010-09-23 18:01:00
回复 删除
要加一个a>b的判断

#2 wjcwjc2@2013-05-05 01:21:00
回复 删除
数据中有a>b

要加

if(a>b)

{

t=a;

a=b;

b=t;

}

查看更多回复
提交回复