题目链接
https://www.patest.cn/contests/pat-b-practise/1005
代码
#include<iostream>
#include<algorithm>
#include<string>
#define MAX 105
using namespace std;
int main() {
int n, x, num = 0;
int a[MAX];
cin >> n;
for(int i=0; i<n; i++) cin >> a[i];
for(int i=0; i<n; i++) {
x = a[i];
while(x != 1) {
if(x % 2 == 0) x = x / 2;
else x = (3 * x + 1) / 2;
for(int k=0; k<n; k++) {
if(x == a[k]) {a[k] = 1; break;}
}
}
}
sort(a, a + n);
for(int i=n-1; i > 0; i--) {
if(a[i] != 1) {
cout << a[i];
if(a[i-1] != 1) cout << " ";
} else break;
}
return 0;
}