小白成长记之PTA乙级题 1005

PTA乙级题 1005. 继续(3n+1)猜想 (25)

【题目链接】


#include<stdio.h> 
#include<string.h> 
int main()  
{  
  int a[100];  
  int b[100][100];  
  int i,j,k,n,q;  
  memset(b,0,sizeof(b));  
  scanf("%d\n",&n);  
  for(i=0;i<n;i++)  
  {  
    scanf("%d",&a[i]);  
  }  
  for(i=0;i<n;i++)  
  {  
    k=a[i];  
    j=0;  
    while(k!=1)  
    {  
      if(k%2==0)  
        k=k/2;  
      else  
        k=(3*k+1)/2;  
      b[i][j]=k;  
      j++;  
    }  
  }  
  for(i=0;i<n;i++)  
  {  
    for(j=0;b[i][j]!=0;j++)  
    {  
      for(q=0;q<n;q++)  
      if(a[q]==b[i][j])  
        a[q]=0;  
    }  
  }  
  for(i=0;i<n-1;i++)  
    for(j=i;j<n;j++)  
      if(a[i]<a[j])  
      {  
        int temp;  
        temp=a[i];  
        a[i]=a[j];  
        a[j]=temp;  
      }  
  for(i=0;i<n-1;i++)  
    for(j=i;j<n;j++)  
    {  
      if(a[i]==0&&a[j]!=0)  
      {  
        a[i]=a[j];  
        a[j]=0;  
      }  
    }  
    q=0;  
    for(i=0;i<n;i++)  
      if(a[i]>0)  
        q++;  
  for(i=0;i<q-1;i++)  
    if(a[i]>0)  
      printf("%d ",a[i]);  
    printf("%d",a[q-1]);  
    return 0;  
}
全部评论

相关推荐

测试糕手手:社会第一课,随便吹牛逼,直接说四个月,别老实。老实人只会被欺负
点赞 评论 收藏
分享
07-02 13:52
门头沟学院 Java
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
06-07 19:59
门头沟学院 C++
补药卡我啊😭:都快15年前的了还在11新特性
你的简历改到第几版了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
今天 12:02
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务