๐Ÿงฉ NL-Queen (mod N)

์‹œ๊ฐ„ ์ œํ•œ2์ดˆ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ1024 MB

์š”์•ฝ
ํ† ๋Ÿฌ์Šค ์œ„ N x N ์ฒด์ŠคํŒ์— ์„œ๋กœ ๊ณต๊ฒฉํ•˜์ง€ ์•Š๋Š” ํ€ธ N๊ฐœ๋ฅผ, ์–ด๋–ค ์ƒ์ˆ˜ k์— ๋Œ€ํ•ด์„œ๋„ k-์„ ํ˜•์ด ๋˜์ง€ ์•Š๋„๋ก ๋ฐฐ์น˜ํ•˜๊ณ  ๊ฐ ํ–‰์˜ ์—ด ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•˜๊ฑฐ๋‚˜ -1์„ ์ถœ๋ ฅํ•œ๋‹ค.
๋‚œ์ด๋„

์–ด๋ ค์›€10์  ์ค‘ 8์ 

์œ ํ˜•
์ˆ˜ํ•™, ์ •์ˆ˜๋ก , ์กฐํ•ฉ๋ก , ๊ตฌํ˜„
์ •๋‹ต์ž
์•„์ง ์ œ์ถœ์ด ์—†์Šต๋‹ˆ๋‹ค

๋ฌธ์ œ

Nร—NN \times N ์ฒด์ŠคํŒ์ด ์ฃผ์–ด์งˆ ๋•Œ, ์ฒด์ŠคํŒ์— ํ€ธ NN๊ฐœ๋ฅผ ์„œ๋กœ ๊ณต๊ฒฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋†“๋Š” ํŠน๋ณ„ํ•œ ๋ฐฉ๋ฒ• ํ•œ ๊ฐ€์ง€๋ฅผ ์ถœ๋ ฅํ•ด ๋ณด์ž. ์ฒด์ŠคํŒ์˜ rrํ–‰ cc์—ด ์ขŒํ‘œ๋Š” (r,c)(r, c)์ด๋ฉฐ, ๊ฐ€์žฅ ์™ผ์ชฝ ์œ„ ์นธ์€ (1,1)(1, 1), ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ์นธ์€ (N,N)(N, N)์ด๋‹ค. ๋‹จ, ์ฒด์ŠคํŒ์˜ ํ‰ํ–‰ํ•œ ๋ณ€๋ผ๋ฆฌ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด, ๋‘ ํ€ธ์˜ ์ขŒํ‘œ๊ฐ€ ๊ฐ๊ฐ (a,b)(a, b), (c,d)(c, d)๋ผ ํ•  ๋•Œ ๋‹ค์Œ ๋„ค ์กฐ๊ฑด ์ค‘ ์ ์–ด๋„ ํ•˜๋‚˜๋ฅผ ๋งŒ์กฑ์‹œํ‚ค๋ฉด ๋‘ ํ€ธ์€ ์„œ๋กœ ๊ณต๊ฒฉํ•˜๋Š” ์ƒํƒœ์ด๋‹ค.

  1. a=ca = c
  2. b=db = d
  3. a+bโ‰กc+d(modN)a+b \equiv c+d \pmod N
  4. aโˆ’bโ‰กcโˆ’d(modN)a-b \equiv c-d \pmod N

ํ€ธ NN๊ฐœ๊ฐ€ ์„œ๋กœ ๊ณต๊ฒฉํ•˜์ง€ ์•Š๋Š” ๋ฐฐ์น˜์—์„œ ii๋ฒˆ์งธ ํ–‰์— ์žˆ๋Š” ํ€ธ์˜ ์—ด์˜ ๋ฒˆํ˜ธ๋ฅผ A_iA\_i๋ผ ํ•˜์ž. ์ •์ˆ˜ kk์™€ ๋ชจ๋“  ii์— ๋Œ€ํ•ด์„œ A_(iโ€Šmodโ€ŠN)+1โˆ’A_iA\_{(i \bmod N) + 1} - A\_i โ‰กk(modN)\equiv k \pmod N์„ ๋งŒ์กฑ์‹œํ‚ค๋ฉด ์ด ๋ฐฐ์น˜๋Š” kk-์„ ํ˜•์ด๋ผ๊ณ  ํ•œ๋‹ค. ๋ชจ๋“  ์ •์ˆ˜ kk์— ๋Œ€ํ•ด์„œ kk-์„ ํ˜•์ด ์•„๋‹ˆ๋ฉด ์ด ๋ฐฐ์น˜๋ฅผ ํŠน๋ณ„ํ•˜๋‹ค๊ณ  ํ•œ๋‹ค.

์ฒด์ŠคํŒ์— ํ€ธ NN๊ฐœ๋ฅผ ์„œ๋กœ ๊ณต๊ฒฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋†“๋Š” ํŠน๋ณ„ํ•œ ๋ฐฉ๋ฒ• ํ•œ ๊ฐ€์ง€๋ฅผ ์ถœ๋ ฅํ•ด ๋ณด์ž.

์ž…๋ ฅ

์ฒซ ๋ฒˆ์งธ ์ค„์— ์ •์ˆ˜ NN์ด ์ฃผ์–ด์ง„๋‹ค. (2โ‰คNโ‰ค500,0002 \le N \le 500\\,000)

์ถœ๋ ฅ

NN๊ฐœ์˜ ํ€ธ์„ ๋†“์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด, ์ฒซ ๋ฒˆ์งธ ์ค„์— A_1A\_1, A_2A\_2, A_3A\_3, โ‹ฏ\cdots, A_NA\_N์„ ์ถœ๋ ฅํ•œ๋‹ค. (1โ‰คA_iโ‰คN1 \leq A\_i \leq N)

๋งŒ์•ฝ NN๊ฐœ์˜ ํ€ธ์„ ๋†“์„ ์ˆ˜ ์—†๋‹ค๋ฉด -1์„ ์ถœ๋ ฅํ•œ๋‹ค.

์˜ˆ์ œ3

  1. ์˜ˆ์ œ 1

    ์ž…๋ ฅ
    2
    
    ์˜ˆ์ƒ ์ถœ๋ ฅ
    -1
    
  2. ์˜ˆ์ œ 2

    ์ž…๋ ฅ
    5
    
    ์˜ˆ์ƒ ์ถœ๋ ฅ
    -1
    
  3. ์˜ˆ์ œ 3

    ์ž…๋ ฅ
    25
    
    ์˜ˆ์ƒ ์ถœ๋ ฅ
    7 1 3 13 20 4 14 16 23 2 15 8 6 24 12 18 22 5 10 21 9 25 17 19 11