SP5832 ANDROUND - AND Rounds

题目描述

LBW 有一个 $n$ 个数的**循环数组**。 每次操作,LBW 要将数组 $a$ 的每个元素 $a_i$ 更改成 $a_{i-1}$ 按位与 $a_i$ 按位与 $a_{i+1}$。 LBW 将要执行 $k$ 次操作,他想知道最后的 $a$ 数组有哪些数。

输入格式

**本题有多组数据**。 第一行一个数 $T$,表示有 $T$ 组数据。 对于每组数据: 第一行包含两个空格分隔的整数 $n$ 和 $k$。 第二行包含 $n$ 个空格分隔的整数 $a_i$ 表示数组 $a$ 的初始值。

输出格式

输出共 $T$ 行。 对于每个测试用例,输出一个由 $n$ 个整数组成的空格分隔的列表,指定数组a在K和舍入之后的内容。

说明/提示

$1 \le T \le 50$ $3 \le n \le 2 \times 10^4$ $1 \le k \le 10^8 $ $0 \le a_i \le 10^8$