#include<stdio.h>
int main()
{
int i,j,k,n,m=0;
if(scanf("%d",&i));
int a[100],b[100];
for(j=0;j<i;j++)
{
scanf("%d",&a[j]);
b[j]=a[j];
}
for(j=0;j<i;j++)
{
n=a[j];
while (a[j]!=1)//对输入的数进行操作
{
if((a[j]%2)!=0)
{
a[j]=(3*a[j]+1)/2;
}
else
{
a[j]=a[j]/2;
}
for(k=0;k<i;k++)
{
if(b[k]==a[j])
{
b[k]=-1;
m++;
}
}
}
a[j]=n;
}
for(k=0;k<i-1;k++)//排序
{
for(j=k;j<i;j++)
{
if(b[k]<b[j])
{
int t=b[j];
b[j]=b[k];
b[k]=t;
}
}
}
for(j=0;j<i;j++)
{
if(b[j]!=-1)
{
if(j<i-m-1)
{
printf("%d ",b[j]);
}
else
{
printf("%d",b[j]);
}
}
}
printf("\n");
return 0;
}
PAT 1005
最新推荐文章于 2024-08-14 23:48:25 发布