給定正整數 $N$,判斷是否存在長度為 $N$ 的序列 $\left[a_1, a_2, \ldots, a_N\right] \, (0 \leq a_i < 2^ {30})$ 使得任意非空區間 $\left[a_l, a_{l + 1}, \ldots, a_r\right] \, (1 \leq l \leq r \leq N)$ 的位元和(ㄏㄢˋ)和(ㄏㄜˊ) (bitwise AND sum) 是獨一無二的。如果有,請構造任意滿足這個條件的序列。
換句話說,集合
$$
S = \left\lbrace a_l \, \& \, a_{l + 1} \, \& \cdots \, \& \, a_r \, \mid \, l, r \in \mathbb{N}, 1 \leq l \leq r \leq N\right\rbrace
$$
的大小必須是 $\displaystyle \binom{N + 1}{2}$。
每份測試檔案的第一行(也是唯一一行)會包含恰一個整數$N$,代表需要構造的序列長度。
對於每筆測試資料,如果可以構造出滿足條件的序列,第一行請輸出 Yes
;反之輸出 No
。
如果第一行的輸出是為 Yes
,請輸出第二行 $a_1, a_2, \ldots, a_N$ 代表你所構造出來的序列。兩兩整數之間以半形空白分開。
IOICamp 2023 Day2 pA
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~1 | 範例測資 | 0 |
2 | 0~25 | 無特別限制 | 100 |