真的很需要细心!!
#include<cstdio>
#include<algorithm>
using namespace std;
bool cmp(int a,int b)
{
return a>b;
}
int main()
{
int n,m,a[110];
scanf("%d",&n);
bool hash[1000]={0};
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
m=a[i];
while(m!=1)
{
if(m%2==0) m/=2;
else m=(3*m+1)/2;//把()里的m敲成了n就出不来结果了,数据输入完程序没反应
hash[m]=true;
}
}
int count=0;
for(int i=0;i<n;i++)
{
if(hash[a[i]]==false) count++;
}
sort(a,a+n,cmp);
for(int i=0;i<n;i++)
{
if(hash[a[i]]==false)
{
printf("%d",a[i]);
count--;
if(count>0) printf(" ");
}
}
return 0;
}