2334: 16-y-变换数组
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:1
Solved:1
Description
输入一个数组 a,包含有 n 个元素 a1,a2,⋅⋅⋅,an。
对这个数组进行 m 次变换,每次变换会将数组 a中的每个元素 ai 转换为 ai * bitCount(ai)。
其中 bitCount(x)表示数字 x的二进制表示中 1 出现的次数,例如 bitCount(3)=2,因为 3 的二进制表示为 11,其中 1 出现了两次。
Input
输入的第一行包含一个正整数 n,表示数组 a 中的元素个数。
第二行包含 n个整数 a1,a2,⋅⋅⋅,an,相邻整数之间使用一个空格分隔。
第三行包含一个整数 m,表示变换次数。
Output
输出一行,包含 n个整数,相邻整数之间使用一个空格分隔,表示变换之后得到的数组 a。
Sample Input Copy
2
5 7
2
Sample Output Copy
20 63
HINT
样例解释
5=(101)2,7=(111)2,第一次变化后 a=[10,21]。
10=(1010)2,21=(10101)2,第二次变换后 a=[20,63]。
数据范围
对于所有评测用例,1≤n≤103,0≤m≤5,0≤ai≤1000。