#include<iostream>
#include<cstdio>
using namespace std;
int flag[100] = {};
int num[100] = {};
int i;
int record[1000][1000] = {};
int main()
{
void Find(int a, int b);
void Sort(int a[], int n);
int k;
int pos;
char c = '0';
int end[1000] = {};
cin >> i;
for (k = 0; k < i; k++)
{
cin >> num[k];
}
Sort(num, k);
for (k = 0; k < i; k++)
{
Find(num[k], k);
}
for (k = 0; k < i; k++)
{
if (flag[k] == 0)
{
pos = k;
break;
}
}
cout << num[pos];
for (k =pos+1; k < i; k++)
{
if (flag[k] == 0)
{
cout <<" "<< num[k];
}
}
system("pause");
return 0;
}
void Find(int a, int b)
{
int j = 0;
int m;
int t1;
while (a != 1)
{
if (a % 2 == 0)
{
a /= 2;
record[b][j++] = a;
}
else
{
a = (3 * a + 1) / 2;
record[b][j++] = a;
}
}
j = j - 1;
t1 = j;
for (m = 0; m < i; m++)
{
j = t1;
while (j >= 0)
{
if (record[b][j] == num[m])
{
flag[m] = 1;
break;
}
j--;
}
}
}
void Sort(int a[], int n)
{
int j;
int q;
int temp;
for (j = 0; j < n; j++)
{
for (q = 0; q < n - j - 1; q++)
{
if (a[q]<a[q + 1])
{
temp = a[q];
a[q] = a[q + 1];
a[q + 1] = temp;
}
}
}
}
1005. 继续(3n+1)猜想 (25)
最新推荐文章于 2022-10-24 20:09:27 发布