給定$N$,請找出一個$1$到$N$的排列$a_0,a_1,\cdots,a_{N-1}$,使得這個數列的$N$個前綴和(即$a_0,a_0+a_1,a_0+a_1+a_2,\cdots,\sum^ {N-1}_{i=0}a_i$)中恰好有除以$N$餘0、除以$N$餘1、……、除以$N$餘$N-1$的數各一個,或者判斷不存在這樣一個排列。
例如$N=2$,取數列$2,1$,則其兩個前綴和分別為$2,3$,恰好有除以2餘0、除以2餘1的數各一個。
輸入只有一個正整數$N$,$N \leq 2\times 10^ 6$。
若不存在一個滿足題意的排列,輸出一行No
。
否則,先輸出一行Yes
,並在下一行輸出一個滿足題意的排列,數字間以空格隔開。若有多組解,輸出其中一個即可。
Problem set by skylinebaby
建國中學107學年度校隊選拔:初試pF
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~7 | $N \leq 8$ | 10 |
2 | 0~11 | $N \leq 12$ | 10 |
3 | 12~28 | $N$為$2$的冪次 | 10 |
4 | 0~78 | 無額外限制 | 70 |