#include<stdio.h>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
#define maxn 10005
//char a[maxn],b[maxn];
int a[110];
bool HashTable[100000];
bool cmp(int a,int b)
{
return a>b;
}
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
int t=a[i];
while(t!=1)
{
if(t%2==0)
{
t=t/2;
}
else
{
t=(3*t+1)/2;
}
HashTable[t]=true;
}
}
sort(a,a+n,cmp);
int count=0;
for(int i=0;i<n;i++)
{
if(HashTable[a[i]]==false)
count++;
}
for(int i=0;i<n;i++)
{
if(HashTable[a[i]]==false)
{
printf("%d",a[i]);
count--;
if(count>0)
printf(" ");
}
}
return 0;
}
tip:
①bool类型默认是true
②bool类型数组初始化
memset(a,true,sizeof(a))