题目背景
本题为改编题
题目描述
Tweetuzki 有一个长度为 n 的序列 a1,a2,⋯,an。
他希望找出一个最大的 k,满足在原序列中存在一些数 b1,b2,⋯,bk(可打散在原序列中的顺序),满足对于任意的 i(1≤i<k),bi÷3=bi+1(这时 bi 必须能够被 3 整除)或 bi×2=bi+1。并输出这个序列。
输入格式
第一行一个正整数 n(2≤n≤105),表示序列的长度。
第二行包含 n 个正整数,$a_1, a_2, \cdots, a_n(1 \le a_i \le 3 \times 10^{18})$,描述这个数列。
输出格式
第一行一个正整数 k,表示最大的 k。
第二行 k 个正整数 b1,b2,⋯,bn,描述你选择的数。
6
4 8 6 3 12 9
6
9 3 6 12 4 8 
4
42 28 84 126
4
126 42 84 28 
5
4 8 16 12 24
4
12 24 8 16
提示
Subtask #1 (20 points):2≤n≤8;
Subtask #2 (30 points):2≤n≤100,1≤ai≤7×108;
Subtask #3 (20 points):2≤n≤1000,1≤ai≤1000;
Subtask #4 (30 points):2≤n≤105,1≤ai≤3×1018。