#include<stdio.h>int main(){ int i,j,num,k,a[101],length; for(i=0;i<101;++i) a[i]=-1; scanf("%d",&num); for(i=0;i<num;++i) { scanf("%d",&k); a[k]=0; } for(i=0;i<101;++i) { if(a[i]!=0) continue; else { j=i; while(j!=1) { if(j%2==0) j=j/2; else j=(3*j+1)/2; if(j<=100) //此处不加if(j<=100)会出现部分测试数据的段错误 a[j]=1; } } } for(i=0,length=0;i<101;++i) { if(a[i]==0) length++; } for(i=100;i>0;--i) { if(a[i]==0) { if(length!=1) { --length; PRintf("%d",i); putchar(' '); } else { printf("%d",i); break; } } } return 0;}
新闻热点
疑难解答