CF1463B.Find The Array
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array [a1,a2,…,an] such that 1≤ai≤109 . Let S be the sum of all elements of the array a .
Let's call an array b of n integers beautiful if:
- 1≤bi≤109 for each i from 1 to n ;
- for every pair of adjacent integers from the array (bi,bi+1) , either bi divides bi+1 , or bi+1 divides bi (or both);
- 2i=1∑n∣ai−bi∣≤S .
Your task is to find any beautiful array. It can be shown that at least one beautiful array always exists.
输入格式
The first line contains one integer t ( 1≤t≤1000 ) — the number of test cases.
Each test case consists of two lines. The first line contains one integer n ( 2≤n≤50 ).
The second line contains n integers a1,a2,…,an ( 1≤ai≤109 ).
输出格式
For each test case, print the beautiful array b1,b2,…,bn ( 1≤bi≤109 ) on a separate line. It can be shown that at least one beautiful array exists under these circumstances. If there are multiple answers, print any of them.
输入输出样例
输入#1
4 5 1 2 3 4 5 2 4 6 2 1 1000000000 6 3 4 8 1 2 3
输出#1
3 3 3 3 3 3 6 1 1000000000 4 4 8 1 3 3