CF1891B.Deja Vu
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array a of length n , consisting of positive integers, and an array x of length q , also consisting of positive integers.
There are q modification. On the i -th modification ( 1≤i≤q ), for each j ( 1≤j≤n ), such that aj is divisible by 2xi , you add 2xi−1 to aj . Note that xi ( 1≤xi≤30 ) is a positive integer not exceeding 30.
After all modification queries, you need to output the final array.
输入格式
The first line contains a single integer t ( 1≤t≤104 ) — the number of test cases. The description of the test cases follows.
The first line of each test case contains two integers n and q ( 1≤n,q≤105 ) —the length of the array a and the number of queries respectively.
The second line of each test case contains n integers a1,a2,a3,…,an — the elements of the array a ( 1≤ai≤109 ).
The third line of each test case contains q integers x1,x2,x3,…,xq — the elements of the array x ( 1≤xi≤30 ), which are the modification queries.
It is guaranteed that the sum of n and the sum of q across all test cases does not exceed 2⋅105 .
输出格式
For each test case, output the array after all of the modification queries.
输入输出样例
输入#1
4 5 3 1 2 3 4 4 2 3 4 7 3 7 8 12 36 48 6 3 10 4 2 5 4 2 2 2 2 2 1 1 1 1 5 5 1 2 4 8 16 5 2 3 4 1
输出#1
1 2 3 6 6 7 10 14 38 58 6 3 3 3 3 3 3 1 3 7 11 19
说明/提示
In the first test case, the first query will add 2 to the integers in positions 4 and 5 . After this addition, the array would be [1,2,3,6,6] . Other operations will not modify the array.
In the second test case, the first modification query does not change the array. The second modification query will add 8 to the integer in position 5 , so that the array would look like this: [7,8,12,36,56,6,3] . The third modification query will add 2 to the integers in positions 2,3 , 4 and 5 . The array would then look like this: [7,10,14,38,58,6,3] .