#include<stdio.h>
int main(){
int n[100]={0};
int m[100]={0};
int load[100];
int i=0;
long p=0;
int K=0;
int max=0;
scanf("%d",&K);
for(i=1; i<=K; i++){
scanf("%d",&p);
m[p]=1;
load[i]=p;
if(p>max){
max=p;
}
}for(i=1; i<=K; i++){
p=load[i];
while(p!=1){
if(p%2==0){
p/=2;
if(p<=100){
n[p]=1;
}
}else{
p=(3*p+1)/2;
if(p<=100){
n[p]=1;
}
}
}
}p=0;
for(i=max; i>1; i--){
if(m[i]==1 && n[i]==0){
if(p==1){
printf(" ");
}
printf("%d",i);
p=1;
}
}
return 0;
}
PAT (Basic Level) Practice 1005 继续(3n+1)猜想 (C语言)
最新推荐文章于 2024-07-24 17:46:08 发布