韩哥哥


私信TA

用户名:hzs

访问量:2216

签 名:

等  级
排  名 13746
经  验 910
参赛次数 0
文章发表 4
年  龄 0
在职情况 学生
学  校 中北大学
专  业

  自我简介:

TA的其他文章

解题思路:

注意事项:

参考代码:

#include <stdio.h>

int main(){

int i,j,n,t,x,y,p,q,o,temp;

int a[100];

while(~scanf("%d %d",&i,&j)){

x=1;y=0;

q=i;o=j;

if(i>j){

temp=i;

i=j;

j=temp;

}

p=j-i+1;

for(i;i<=j;i++){

n=i;

t=1;

while(n!=1){

if(n%2==0){

n=n/2;

t=t+1;

}

else{

n=n*3+1;

t=t+1;

}

}

a[y]=t;

y++;

}

for(x;x<p;x++){

for(y=0;y<p-x;y++){

if(a[y]>a[y+1]){

temp=a[y];

a[y]=a[y+1];

a[y+1]=temp;

}

}

}

printf("%d ",q);

printf("%d ",o);

printf("%d\n",a[p-1]);

return 0;

此题注意输入的i,j存在i>j的情况,其次输出的时候对应输入的格式。本人的解法思路是利用循环将每组输入的每次到1的次数循环放进数组,然后利用冒泡排序找到最大 的输出。

 

0.0分

0 人评分

  评论区

  • «
  • »