首页
IT
登录
6mi
u
盘
搜
搜 索
IT
1005
1005
xiaoxiao
2021-03-25
57
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string.h>
using
namespace
std
;
#define N 10000
int
ans[N],j=
1
;
int
a[N],z[N];
int
main() {
int
n;
memset
(a,
0
,
sizeof
(a));
scanf
(
"%d"
,&n);
for
(
int
i=
1
;i<=n;i++) {
int
k;
scanf
(
"%d"
,&k); z[i]=k;
if
(a[k]==
1
)
continue
;
while
(k!=
1
) {
if
(k%
2
==
1
) { k=(
3
*k+
1
)/
2
; a[k]=
1
; }
else
{ k=k/
2
; a[k]=
1
; } } } sort(z+
1
,z+
1
+n);
for
(
int
i=n;i>=
1
;i--) {
if
(a[z[i]]==
0
) ans[j++]=z[i]; }
for
(
int
i=
1
;i<(j-
1
);i++) {
printf
(
"%d "
,ans[i]); }
printf
(
"%d\n"
,ans[j-
1
]);
return
0
; }
转载请注明原文地址: https://ju.6miu.com/read-34553.html
技术
最新回复
(
0
)