ARC lessons learned2 - zettsu-t/zettsu-t.github.io GitHub Wiki

AtCoder Regular Contest lessons learned 2

็พๅฝขๅผ(120ๅˆ† 5,6ๅ•)ใฎARCใ‚’่งฃใ„ใฆใฟใพใ™ใ€‚

ARC 104-110

ARC 104-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ“ใƒƒใƒˆ็ทๅฝ“ใŸใ‚Š

ใŠใใ‚‰ใARC 103ใพใงใฏABCใจๅŒๆ™‚้–‹ๅ‚ฌใงๅ•้กŒใŒๅŒใ˜ใ€ARC 104ไปฅ้™ใฏARCใจABCใŒๅˆฅ้–‹ๅ‚ฌใงๅ•้กŒใŒ็•ฐใชใ‚‹ใ‚ˆใ†ใงใ‚ใ‚‹ใ€‚ใชใฎใงใŠใใ‚‰ใใ“ใฎAๅ•้กŒใฏใ‚„ใ•ใ—ใ‚ใซๅ•้กŒใ‚’่จญๅฎšใ—ใŸใฎใ ใ‚ใ†ใ€‚

ๆฑ‚ใ‚ใ‚‹็ญ”ใˆใฏ $(A+B)/2$, $(A-B)/2$ ใงใ‚ใ‚‹ใ€‚

ARC 104-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ‹ฌๅผงใŒไธ€่‡ด

ใ‚ˆใใ‚ใ‚‹ๅ•้กŒใซใ€ๅทฆๅณใฎ () ใŒไธ€่‡ดใ™ใ‚‹ใจใ„ใ†ใฎใŒใ‚ใ‚‹ใ€‚ใ“ใ“ใงใฏ้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใฎ A-T, C-G ใŒไธ€่‡ดใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

  • ๅ…ˆ้ ญใ‹ใ‚‰้ †ใซใ€ ๅ…ˆ้ ญใ‹ใ‚‰ $i$ ๆ–‡ๅญ—็›ฎใพใงใฎAใฎๅ‡บ็พๅ›žๆ•ฐ-Tใฎๅ‡บ็พๅ›žๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ใ€‚ๅŒๆง˜ใซCใฎๅ‡บ็พๅ›žๆ•ฐ-Gใฎๅ‡บ็พๅ›žๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ใ€‚ไพฟๅฎœไธŠใ€็ฉบๆ–‡ๅญ—ๅˆ— $i=0$ ใซใคใ„ใฆใฏ0ๅ›žใจใ™ใ‚‹ใ€‚
  • ๅ…ˆ้ ญใ‹ใ‚‰้ †ใซใ€ $0..i$ ๆ–‡ๅญ—็›ฎใซใคใ„ใฆใ€Aใฎๅ‡บ็พๅ›žๆ•ฐ-Tใฎๅ‡บ็พๅ›žๆ•ฐ=ATใจใ€Cใฎๅ‡บ็พๅ›žๆ•ฐ-Gใฎๅ‡บ็พๅ›žๆ•ฐ=CGใซใคใ„ใฆ่ญ˜ๅˆฅๅญใ‚’ไฝœใ‚‹ใ€‚ $AT + 10000CG$ ใจใ™ใ‚Œใฐใ‚ˆใ„ใ€‚
  • ใใ‚Œใ‚Œใžใ‚Œใฎ่ญ˜ๅˆฅๅญใซใคใ„ใฆใ€ $n$ ๅ›žๅ‡บ็พใ™ใ‚‹ใชใ‚‰ใใฎไธญใฎ2้€šใ‚Š $L,R$ ใ‚’ๅ–ใ‚‹ใจใ€้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ— $(L,R]$ ใงใฏAใฎๅ‡บ็พๅ›žๆ•ฐ=Tใฎๅ‡บ็พๅ›žๆ•ฐใ‹ใคCใฎๅ‡บ็พๅ›žๆ•ฐ=Gใฎๅ‡บ็พๅ›žๆ•ฐใงใ‚ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช็ต„ใฟๅˆใ‚ใ›ใฏ $n(n-1)/2$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ใ“ใ‚Œใ‚’ใ™ในใฆใฎ่ญ˜ๅˆฅๅญใซใคใ„ใฆ่ถณใ™ใจ็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚ใ“ใฎ่งฃใๆ–นใฏ่จˆ็ฎ—้‡ใŒ $O(Nlog(N))$ ใชใฎใงๅ…ฌๅผ่งฃ่ชฌใฎbonusใ ใฃใŸใ€‚

ARC 105-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ“ใƒƒใƒˆ็ทๅฝ“ใŸใ‚Š

ใ‚ฏใƒƒใ‚ญใƒผใฎ้ธใณๆ–นใฏ $2^4$ ้€šใ‚Šใ—ใ‹ใชใ„ใฎใงใ€ใƒ“ใƒƒใƒˆๅ…จๆŽข็ดขใ™ใ‚‹ใจ็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏใ‚ฝใƒผใƒˆใ—ใฆๅ–ใ‚Šใ†ใ‚‹็ต„ใฟๅˆใ‚ใ›ใ‚’ใƒใƒผใƒ‰ใ‚ณใƒผใƒ‡ใ‚ฃใƒณใ‚ฐใ—ใฆใ„ใ‚‹ใ€‚

ARC 105-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ•้กŒๆ–‡้€šใ‚Šใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚‹ใ€‚a_i ใฎ้›†ๅˆใจใ€ๅ€คใŒ a_i ใซใชใ‚‹่ฆ็ด ๆ•ฐใ‚’ๅˆฅใซ็ฎก็†ใ™ใ‚‹ใจใ€C++ใชใ‚‰ 1221 ms ใง้–“ใซๅˆใ†ใ€‚ๆƒณๅฎš่งฃๆณ•ใฏใจใฆใ‚‚ใ‚จใƒฌใ‚ฌใƒณใƒˆใงใ‚ใ‚‹ใ€‚

ARC 105-D

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ•้กŒๅใŒใใฎใพใพ็ญ”ใˆใ ใฃใŸใ€‚

$N = 1$ ใชใ‚‰ๅพŒๆ‰‹ๅฟ…ๅ‹ Second ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ $N > 1$ ใจใ™ใ‚‹ใ€‚ใ™ในใฆใฎ่ข‹ใ‹ใ‚‰ใ‚ณใ‚คใƒณใ‚’ๅ–ใ‚Šๅ‡บใ—ใŸ็›ดๅพŒใฎใ€็šฟ $i$ ใซใ‚ใ‚‹ใ‚ณใ‚คใƒณใ‚’ $B_i : i=1..N$ ใจใ™ใ‚‹ใ€‚

ใพใš $N$ ใŒๅถๆ•ฐใจใ™ใ‚‹ใ€‚Nimใฎๅฟ…ๅ‹ๆณ•ใ€ใ™ในใฆใฎ็šฟใฎใ‚ณใ‚คใƒณ $B_i$ ใฎXORใŒ0ใฎใจใใ‚’ๅ‹ใกใจใ„ใ†ใ“ใจใ‚’ๆ€ใ„ๅ‡บใ™ใ€‚ใ“ใ‚Œใ‚’ๆบ€ใŸใ™ใซใฏๅพŒๆ‰‹ใฎๆœ€ๅ–„ๆ‰‹ใฏใ€ใงใใ‚‹ใ ใ‘ $B_i$ ใฎๅ€คใŒใƒšใ‚ขใซใชใ‚‹ใ‚ˆใ†ใซใ™ใ‚‹ใ“ใจใงใ‚ใ‚‹ใ€‚้กๆ‰“ใกใจใ‚‚่จ€ใ†ใ€‚ใ“ใ‚Œใฏ $a_i$ ใฎๅ€คใŒใƒšใ‚ขใงใ‚ใ‚‹ใ€ใคใพใ‚Šใ‚ใ‚‹ $a = a_i$ ใซใคใ„ใฆใ€ใใฎใ‚ˆใ†ใชใ‚ณใ‚คใƒณใฎๆžšๆ•ฐใจใชใ‚‹่ข‹ใŒๅธธใซๅถๆ•ฐๅ€‹(0่ข‹ใ‚’ๅซใ‚€)ใ“ใจใจ็ญ‰ไพกใงใ‚ใ‚‹ใ€‚ใ“ใ‚ŒใŒใ™ในใฆใฎ $a_i$ ใซใคใ„ใฆๆˆใ‚Š็ซ‹ใฆใฐใ„ใ„ใ€‚

$N$ ใŒๅฅ‡ๆ•ฐใชใ‚‰ๅ…ˆๆ‰‹ๅพŒๆ‰‹ใŒๅ…ฅใ‚Œๆ›ฟใ‚ใ‚‹ใฎใงใ€ๅ‹ๆ•—ใŒ้€†ใซใชใ‚‹ใ€‚ไปฅไธŠใ‚’ใพใจใ‚ใ‚‹ใจไปฅไธ‹ใซใชใ‚‹ใ€‚

  • ($\forall a \in a_{i=1..N}$ ใซใคใ„ใฆใ€ใ‚ณใ‚คใƒณใฎๆžšๆ•ฐใŒ $a$ ใจใชใ‚‹ใ‚ˆใ†ใช่ข‹ใŒๅถๆ•ฐๅ€‹) XOR ($N$ ใŒๅถๆ•ฐใชใ‚‰) Second
  • ใใ†ใงใชใ‘ใ‚Œใฐ First

ARC 106-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ทๅฝ“ใŸใ‚Š

$log(1e+18) / log(3) = 37.7$, $log(1e+18) / log(5) = 25.7$ ใชใฎใงใ€ $(A,B)$ ใ‚’ไบŒ้‡ใƒซใƒผใƒ—ใ—ใฆใ‚‚่จˆ็ฎ—้‡ใฏๅฐ‘ใชใ„ใ€‚ $B$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ $N-5^B$ ใ‚’3ใงๅ‰ฒใ‚Œใ‚‹ใ ใ‘ๅ‰ฒใฃใฆใ€ๅ‰ฒใ‚Šๅˆ‡ใ‚ŒใŸใ‚‰3ใงๅ‰ฒใฃใŸๅ›žๆ•ฐใŒ $A$ ใงใ‚ใ‚‹ใ€‚

ARC 106-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธๅค‰้‡

้€ฃ็ตๆˆๅˆ†ใซใŠใ„ใฆใ€้ ‚็‚นใฎๆ•ฐๅ€คใฎๅ’Œใฏไธๅค‰ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆใ‚ฐใƒฉใƒ•ใ‚’้€ฃ็ตๆˆๅˆ†ๅˆ†่งฃใ—ใฆใ€ใ™ในใฆใฎ้€ฃ็ตๆˆๅˆ†ใซใŠใ„ใฆ $a$ ใฎๅ’Œใจ $b$ ใฎๅ’ŒใŒ็ญ‰ใ—ใ‘ใ‚Œใฐ Yes ใ€็ญ‰ใ—ใใชใ„้€ฃ็ตๆˆๅˆ†ใŒใ‚ใ‚Œใฐ No ใงใ‚ใ‚‹ใ€‚

้€ฃ็ตๆˆๅˆ†ใซใŠใ„ใฆ $a$ ใฎๅ’Œใจ $b$ ใฎๅ’ŒใŒ็ญ‰ใ—ใ‘ใ‚Œใฐใ€ใ‚ใ‚‹้ ‚็‚นใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆ $a_i$ ใ‚’ $b_i$ ใซใ—ใ€ใใฎ้šฃใฎ้ ‚็‚นใ‚’ $a_j$ ใ‚’ $b_j$ ใซใ—ใ€ใจใ„ใ†ใ“ใจใ‚’็นฐใ‚Š่ฟ”ใ›ใฐๆœ‰้™ๅ›žใง $a$ ใ‚’ $b$ ใซใงใใ‚‹ใ€‚้žใƒซใƒผใƒ—ใฎ้ ‚็‚นใŒใ‚ใ‚Œใฐใใ“ใ‹ใ‚‰ๅ€คใ‚’ๆฑบใ‚ใฆใ€ใใฎๅพŒใƒซใƒผใƒ—ใซ้ ‚็‚นใซใคใ„ใฆไธ€ใคใšใคๆฑบใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚

ARC 106-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใฏๅคงไบ‹ใ€‚

$N=1, M=0$ ใชใ‚‰ๅŒบ้–“ $[1,2]$ ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ๅฟ˜ใ‚Œใฆ1 WAใ—ใŸใ€‚

$M < 0$ ใฏ่งฃใชใ—ใงใ‚ใ‚‹ใ€‚ๆ˜‡้ †ใซไธฆในใŸๆ™‚ใ€้ซ˜ๆฉ‹ๅ›ใฏ้ธในใชใ„ใŒ้’ๆœจๅ›ใฏ้ธในใ‚‹ๅŒบ้–“ใ‚’ๆง‹็ฏ‰ใ™ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ไธŠๆ‰‹ใ่จผๆ˜Žใ‚’ไธŽใˆใ‚‰ใ‚Œใชใ„ใŒใ€ใจใซใ‹ใๆง‹็ฏ‰ใงใใชใ„ใ€‚ใจๆ€ใฃใฆใ„ใŸใฎใ ใŒใ€ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚€ใพใงใ€้ซ˜ๆฉ‹ๅ›ใŒๆœ€้ฉ่งฃใ‚’ๅ‡บใ™ใ“ใจใ‚’ๅฟ˜ใ‚Œใฆใ„ใŸใ€‚

$M \geq 0$ ใจใใซใ€ๅๅˆ†ๅคงใใชๅŒบ้–“ $[L,R]$ ใ‚’ไฝœใ‚Šใ€ $[L_1,R_1], ... , [L_d,R_d]$ , $L < L_1 < R_1 ... < L_d < R_d < R$ ใจใ™ใ‚‹ใ€‚้ซ˜ๆฉ‹ๅ›ใฏ $d$ ๅŒบ้–“้ธในใ‚‹ใŒใ€้’ๆœจๅ›ใฏ1ๅŒบ้–“ใ—ใ‹้ธในใชใ„ใฎใงใ€ๅทฎ $d-1=M$ ใ‚’ไฝœใ‚Œใ‚‹ใ€‚ $M < N-2$ ใชใ‚‰ $d+1$ ๅŒบ้–“ใฎ้‡ใชใ‚Šใ‚’ใ“ใฎใ‚ˆใ†ใซๆง‹็ฏ‰ใ—ใ€ใใฎๅพŒ้‡ใชใ‚‰ใชใ„ๅŒบ้–“ใ‚’ไธฆในใ‚‹ใ€‚ $M > N-2$ ใชใ‚‰่งฃใชใ—ใงใ‚ใ‚‹ใ€‚

ARC 107-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ†ๅธฐ็š„

$\sum_{a=1}^{A}{aX} = XA(A+1)/2$ ใงใ‚ใ‚‹ใ€‚ $B,C$ ใซใคใ„ใฆใ‚‚ๅŒๆง˜ใชใฎใงใ€ๆฑ‚ใ‚ใ‚‹็ญ”ใˆใฏ $ABC(A+1)(B+1)(C+1)/8$ ใงใ‚ใ‚‹ใ€‚

ARC 107-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฏพ็งฐๆ€ง

$K=0$ ใชใ‚‰ $a=1..N$, $b=N..1$ ใชใฎใงๅทฆ่พบใ‚‚ๅณ่พบใ‚‚ $N$ ้€šใ‚Šใ€่จˆ $N^2$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

$K < 0$ ใชใ‚‰ $K$ ใฎ็ฌฆๅทใ‚’ๅ่ปขใ•ใ›ใฆ็งป้ …ใ™ใ‚‹ใจใ€ $a+b$ ใจ $c+d$ ใฎๅฝนๅ‰ฒใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใ‚ˆใฃใฆ $a+b = c+d+K, K > 0$ ใซใคใ„ใฆ่€ƒใˆใ‚‹ใ€‚ๅณ่พบใฎๅ’Œใฏ $2..(2N+K)$ ใชใฎใงใ€ $i=c,d$ ใจใ—ใฆ $a,b$ ใŒๅ–ใ‚Šใ†ใ‚‹ๅ€คใฏ $max(1,i-N)..min(N,i-N)$ ใ€ $c,d$ ใŒๅ–ใ‚Šใ†ใ‚‹ๅ€คใฏ $max(1,i-K-N)..min(N,i-K-N)$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใฎ็ต„ใฟๅˆใ‚ใ›ใ‚’ $i=(2+K)..(2N)$ ใซใคใ„ใฆ่ถณใ™ใจ็ญ”ใˆใซใชใ‚‹ใ€‚

ARC 107-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ•้กŒๆ–‡ใฎๆ„ๅ‘ณใ‚’็†่งฃใ™ใ‚‹ใฎใซ20ๅˆ†ๆŽ›ใ‹ใฃใŸใ€‚ๅˆ†ใ‹ใฃใฆใ—ใพใˆใฐใใ“ใ‹ใ‚‰ใฏๆ—ฉใ„ใ€‚

ๅ•้กŒๆ–‡ใฎๆ“ไฝœใ‚’่จ€ใ„ๆ›ใˆใ‚‹ใจใ€่ฆ็ด ๆ•ฐ $N$ ใฎใƒ™ใ‚ฏใƒˆใƒซใ‚’ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใชใฎใฏใ€ใƒ™ใ‚ฏใƒˆใƒซใฎๅ’Œใซใคใ„ใฆใ™ในใฆใฎ่ฆ็ด ใŒ $K$ ไปฅไธ‹ใฎใจใใงใ‚ใ‚‹ใ€‚่กŒๅˆ—ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ‚‚ๅ›ž่ปขใจใ„ใ†ใ‹ใƒˆใƒผใƒฉใ‚นไธŠใซๅ›žใ™ใ ใ‘ใชใฎใงใ€ใƒ™ใ‚ฏใƒˆใƒซใฎๅ’Œใซใคใ„ใฆใฎๆกไปถใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚

ใ‚ˆใฃใฆใ™ในใฆใฎ่กŒใฎ็ต„ใฟๅˆใ‚ใ›ใซใคใ„ใฆใ€ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใช็ต„ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $A$ ่กŒใจ $B$ ่กŒใ‚’ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใงใ€ $B$ ่กŒใจ $C$ ่กŒใ‚’ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใชใ‚‰ใ€้€ฃ็ถšใ™ใ‚‹ๆ“ไฝœใ‚’็”จใ„ใฆ $A$ ่กŒใจ $C$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใงใ‚ใ‚‹ใ€‚็›ดๆŽฅไบŒ่กŒใ‚’ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใชใ“ใจใฏใƒ™ใ‚ฏใƒˆใƒซใฎ่ฆ็ด ใ‚’่จˆ็ฎ—ใ™ใ‚‹ใจๅˆ†ใ‹ใ‚Šใ€้€ฃ็ถšใ™ใ‚‹ๆ“ไฝœใงๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใงใ‚ใ‚‹ใ“ใจใฏunion-findๆœจใ‚’ๆง‹ๆˆใ™ใ‚‹ใจๅˆ†ใ‹ใ‚‹ใ€‚

Union-findๆœจใฏ้€ฃ็ตๆˆๅˆ†ใจใ—ใฆใ€ๅ…ฅใ‚Œๆ›ฟใˆๅฏ่ƒฝใช่กŒใฎ้›†ๅˆ $[S_1, S_2, ..., S_m]$ ใ‚’่กจ็พใ—ใฆใ„ใ‚‹ใ€‚่กŒใฎๅ…ฅใ‚Œๆ›ฟใˆๆ–นๆณ•ใฏ $|S_1|! \times |S_2|! \times ... \times |S_m|!$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ๅˆ—ใซใคใ„ใฆใ‚‚่กŒใจ็‹ฌ็ซ‹ใซๆ“ไฝœใงใใ‚‹ใฎใงใ€ๅŒๆง˜ใซๆฑ‚ใ‚ใ‚‹ใ€‚่กŒใฎๅ…ฅใ‚Œๆ›ฟใˆๆ–นๆณ•ใจๅˆ—ใฎๅ…ฅใ‚Œๆ›ฟใˆๆ–นๆณ•ใฎ็ฉใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 108-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ทๅฝ“ใŸใ‚Š

$P \leq 10^{12}$ ใชใฎใง $P$ ใฎ็ด„ๆ•ฐใ‚’ๅˆ—ๆŒ™ใ—ใฆ $S$ ใ‚’็ทๅฝ“ใŸใ‚Šใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚€ใจใ€ $i=1.. \sqrt{P}$ ใจ $S-i$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆ็ทๅฝ“ใŸใ‚Šใ—ใฆใ„ใ‚‹ใ€‚ใ“ใฎๆ–นใŒๅฎŸ่ฃ…ใฏ็ฐกๆฝ”ใงใ‚ใ‚‹ใ€‚ใ‚ณใƒผใƒ‰ใฏ ใ“ใกใ‚‰

ARC 108-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚นใ‚ฟใƒƒใ‚ฏ

fox ใ‚’ๅ–ใ‚Š้™คใใจๅ‰ๅพŒใฎๆ–‡ๅญ—ใŒใใฃใคใ„ใฆ fox ใซใชใ‚Šใ†ใ‚‹ใ€ใจใ„ใ†ใฎใฏใพใ•ใซใ‚นใ‚ฟใƒƒใ‚ฏใŒใ†ใฃใฆใคใ‘ใงใ‚ใ‚‹ใ€‚ $s$ ใ‚’ไธ€ๆ–‡ๅญ—ใšใคใ‚นใ‚ฟใƒƒใ‚ฏใซ็ฉใ‚“ใงใ„ใใ€ๆœซๅฐพใŒ fox ใชใ‚‰ๅฏ่ƒฝใช้™ใ‚Šๅ–ใ‚Š้™คใใ€ใจใ„ใ†ใฎใ‚’็นฐใ‚Š่ฟ”ใ™ใ€‚ใƒ‡ใƒผใ‚ฟๆง‹้€ ใซ std::stack ใ‚’ไฝฟใ†ๅฟ…่ฆใฏใชใใ€ๆ™ฎ้€šใซ std::string::pop_back() ใ‚’ไฝฟใˆใฐใ„ใ„ใ€‚

ARC 108-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ•้กŒใฎๆ„ๅ›ณใ‚’ๅฎŒๅ…จใซๅ–ใ‚Š้•ใˆใฆ่งฃใ‘ใชใ‹ใฃใŸใ€‚

1่พบ2้ ‚็‚นใ‹ใ‚‰ๆˆใ‚‹ใ‚ฐใƒฉใƒ•ใ‚’่€ƒใˆใ‚‹ใ€‚ไธ€ๆ–นใ‚’่พบใฎใƒฉใƒ™ใƒซใงๅก—ใ‚Šใ€ไป–ๆ–นใ‚’ใใ‚Œไปฅๅค–ใฎ่‰ฒใงๅก—ใ‚‹ใ€‚ใ“ใ“ใงใใ‚Œไปฅๅค–ใชใ‚‰ไฝ•ใงใ‚‚ใ„ใ„ใ€ใจใ„ใ†ใ“ใจใ‚’็†่งฃใงใใšใ€่งฃใชใ—ใฎ็Šถๆณใ‚’ไฝœใ‚Šๅ‡บใ—ใฆใ—ใพใฃใŸใ€‚DFSใพใงใฏๅˆ†ใ‹ใฃใŸใฎใ ใŒไฝ™่จˆใชๅ‡ฆ็†ใ‚’ๅ…ฅใ‚Œใฆใ—ใพใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€้€ฃ็ตๆˆๅˆ†ใซใคใ„ใฆใใ‚Œใžใ‚Œๆœจๆง‹้€ ใ‚’่€ƒใˆใ‚Œใฐใ€ไธŠ่จ˜ใฎๅปถ้•ทใซใชใ‚‹ใ€‚ๆ นใซๅก—ใ‚‹่‰ฒใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ๅพŒใฏDFSใงๅฝฉ่‰ฒใ™ใ‚Œใฐใ€่พบไปฅๅค–ใฎ่‰ฒใฏๅคšๆ•ฐใ‚ใ‚‹ใฎใง่ฉฐใ‚€ใ“ใจใฏ็„กใ„ใ€‚

ARC 108-D

้€ฃ็ถšใ™ใ‚‹ A ใ€ A ใ‹ใ‚‰ B ใ€้€ฃ็ถšใ™ใ‚‹ B ใ€ B ใ‹ใ‚‰ A ใฎๅ€‹ๆ•ฐใงDPใ—ใŸใ‚‰ๅŠๅˆ†WAใ—ใŸใ€‚่ซฆใ‚ใŸๅ…ฌๅผ่งฃ่ชฌใ‚’ใฟใŸใ‚‰ใ€ใพใ‚‹ใฃใใ‚Š็•ฐใชใ‚‹่งฃๆณ•ใ ใฃใŸใ€‚

ARC 109-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ›žใ‚Š้“

$2x < y$ ใชใ‚‰ใ€ๅŒใ˜ใƒ“ใƒซใฎ1้šŽๅˆ†ใ‚’็งปๅ‹•ใ™ใ‚‹ใฎใซ้šŽๆฎตใ‚’ไฝฟใ†ใ‚ˆใ‚ŠๅปŠไธ‹ใ‚’ไธ€ๅพ€ๅพฉใ™ใ‚‹ๆ–นใŒ็Ÿญๆ™‚้–“ใงใ‚ใ‚‹ใ€‚ๅŒใ˜ใƒ“ใƒซใฎ1้šŽๅˆ†็งปๅ‹•ใ™ใ‚‹ใฎใซๆŽ›ใ‹ใ‚‹ๆ™‚้–“ใฏ $step = min(2x,y)$ ใงใ‚ใ‚‹ใ€‚ๅปŠไธ‹ใ‚’ๆœ€ไฝŽ1ๅบฆใฏไฝฟใ†ใฎใจใ€ๅปŠไธ‹ใงไธŠใฎ้šŽใซใฏ่กŒใ‘ใชใ„ใฎใงใ€็ท็งปๅ‹•ๆ™‚้–“ใฏไปฅไธ‹ใฎ้€šใ‚Šใ€‚

  • $a \leq b$ ใชใ‚‰ $x + step(b-a)$
  • $a > b$ ใชใ‚‰ $x + step(a-b-1)$

ARC 109-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ…ฅๅŠ›ไพ‹ใ‹ใ‚‰้€†็ฎ—

ๅ…ฅๅŠ›ไพ‹2ใ‹ใ‚‰ใ€ $N-\sqrt{2N}$ ใ‚ใŸใ‚ŠใŒ็ญ”ใˆใ ใจๅฏŸใ—ใŒไป˜ใใ€‚ใฎใงๅพŒไป˜ใ‘ใง่ชฌๆ˜Žใ‚’่€ƒใˆใ‚‹ใจใ€ไธธๅคช $N+1$ ใง $1..i$ ใพใงใ‚’่ณ„ใ†ใ“ใจใŒใงใใ‚‹ใ‹ใฉใ†ใ‹่€ƒใˆใ‚‹ใ€‚ $\sum_1^i=(i+1)i/2 \leq N+1$ ใ‚’ๆบ€ใŸใ™ๆœ€ๅคงใฎ $i$ ใฏใ€ $\sqrt{2(N+1)}$ ไป˜่ฟ‘ใ‚’ๆŽขใ›ใฐ่ฆ‹ใคใ‹ใ‚‹ใ€‚

ใคใพใ‚Š $1..i$ ใพใงใฏไธธๅคช $N+1$ 1ๆœฌใง่ณ„ใˆใ‚‹ใ€‚ๆฎ‹ใ‚Šใฏ่ณ„ใˆใชใ„ใ€‚ใชใœใชใ‚‰ๆฎ‹ใ‚Šใฎไธธๅคช $j,k > N - \sqrt{2(N+1)}$ ใซใคใ„ใฆใ€ $j,k$ ใ‚’ $j+k \leq n$ ไธ€ๆœฌใง่ณ„ใ†ใจใ—ใฆใ€

  • $j+k > N$ ใงใ‚ใ‚Œใฐใใฎใ‚ˆใ†ใชไธธๅคชใฏ่ฒทใˆใชใ„ใ€‚ $N+1$ ใฎไธธๅคชใฏใ‚‚ใ†่ฒทใฃใฆใ—ใพใฃใŸใ€‚
  • $j+k \leq N$ ใชใ‚‰็ตๅฑ€ใฏ $j+k$ ใฎไธธๅคชใ‚’็”จๆ„ใ—ใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚ $j+k$ ใฎไธธๅคชใ‚’่ฒทใฃใฆใใฎใพใพไฝฟใ†ใชใ‚‰ๅˆ†ๅ‰ฒใงใใšใ€ใใ†ใชใ‘ใ‚Œใฐ $j+k,l$ ใซๅˆ†ๅ‰ฒใงใใ‚‹ไป–ใฎไธธๅคช $j+k+l$ ใ‚’็”จๆ„ใ—ใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚ใ“ใฎๅ ‚ใ€…ๅทกใ‚ŠใŒ็ถšใใ€‚

็ตๅฑ€ๅˆ†ๅ‰ฒๅฏ่ƒฝใชไธธๅคชใฏ $N+1$ ไธ€ๆœฌใ—ใ‹ใชใใ€ใใ‚Œใ‚’้•ทใ•1ใ‹ใ‚‰ใงใใ‚‹ใ ใ‘็ดฐใ‹ใๅˆ†ๅ‰ฒใ—ใŸๆ™‚ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 109-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒกใƒขๅŒ–ๅ†ๅธฐ

ใƒˆใƒผใƒŠใƒกใƒณใƒˆใฎ้ƒจๅˆ†ๆœจใซใคใ„ใฆใ€ ๅน…ใฏ $K$ ้€šใ‚Šใ€ๆ–‡ๅญ—ๅˆ—ใฏใฎๅง‹็‚นใฏ $N$ ้€šใ‚Šใชใฎใงใ€ $KN$ ้€šใ‚Šใซใคใ„ใฆ่€ƒใˆใ‚Œใฐใ‚ˆใ„ใ€‚ใ‚ˆใฃใฆ $KN$ ้€šใ‚Šใซใคใ„ใฆใƒกใƒขๅŒ–ๅ†ๅธฐใ™ใ‚Œใฐ่งฃใ‘ใ‚‹ใ€‚

ใƒˆใƒผใƒŠใƒกใƒณใƒˆใ‚’ๆฑบๅ‹ใ‹ใ‚‰ใƒˆใƒƒใƒ—ใƒ€ใ‚ฆใƒณใซ่€ƒใˆใ‚‹ใ€‚0-based indexingใงใ€ๆฑบๅ‹ใ‚’0ใจใ—ใŸๆทฑใ• $d$ ใฎ้ƒจๅˆ†ๆœจใซใคใ„ใฆๅทฆ็ซฏใŒ $i$ ใจใ—ใŸใจใใ€ใ“ใฎ้ƒจๅˆ†ๆœจใฎ็›ดๆŽฅใฎ้ƒจๅˆ†ๆœจใฏๅน… $W = 2^{k - d - 1}$ ใชใฎใงใ€ๅทฆใฎ้ƒจๅˆ†ๆœจใŒ $[i, W)$ ใ€ๅณใฎ้ƒจๅˆ†ๆœจใŒ $[i + W, i + 2W)$ ใงใ‚ใ‚‹ใ€‚ใ“ใฎใจใ $W ,i$ ใฏ $modN$ ใง่จˆ็ฎ—ใ™ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช้ƒจๅˆ†ๆœจใฎๅ‹่€…ใฏใƒกใƒขๅŒ–ใงใใ‚‹ใ€‚

ARC 110-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

Nใฏๅฎšๆ•ฐ

$N = 30$ ใฎใจใใ ใ‘ๆฑ‚ใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚30ไปฅไธ‹ใฎๆ•ฐใฎ็ด ๅ› ๆ•ฐใ™ในใฆใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ๆ•ฐ +1 ใŒ็ญ”ใˆใชใฎใงใ€30ไปฅไธ‹ใฎ็ด ๆ•ฐใซใคใ„ใฆ $2^4 \times 3^3 \times 5^2 \times 7 \times ... \times 29 + 1 = 2329089562801$ ใงใ‚ใ‚‹ใ€‚้€”ไธญ็ตๆžœใ‚’64ใƒ“ใƒƒใƒˆๆ•ดๆ•ฐใงๆฑ‚ใ‚ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏๆœ€ๅฐๅ…ฌๅ€ๆ•ฐใ‚’ๅฎŸ่กŒๆ™‚ใซๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚ๅฎŸ่ฃ…ใ—ใŸใ‚ณใƒผใƒ‰ใฏ ใ“ใกใ‚‰

ARC 110-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ ดๅˆๅˆ†ใ‘

ไธๅฏงใซๅ ดๅˆๅˆ†ใ‘ใ‚’ใ™ใ‚Œใฐ่งฃใ‘ใ‚‹ใ€‚

ใพใš $T$ ใŒไธ€ๆ–‡ๅญ—ใ‹ไบŒๆ–‡ๅญ—ใฎๅ ดๅˆใ‚’็ถฒ็พ…ใ™ใ‚‹ใ€‚ใใฎๅพŒ $T$ ใŒไธ‰ๆ–‡ๅญ—ไปฅไธŠใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚

Sใฎๅ…ˆ้ ญใ€ๅ…ˆ้ ญใฎๆฌกใ€ๅ…ˆ้ ญใฎๆฌกใฎๆฌกใ€ใคใพใ‚Š 110110... , 10110... , 0110... ใฎใฉใ‚Œใซ $T$ ใŒไธ€่‡ดใ™ใ‚‹ใ‹็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚ใฉใ‚Œใซใ‚‚ไธ€่‡ดใ—ใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใ€‚ไธ€่‡ดใ™ใ‚‹ใชใ‚‰ใ‚ชใƒ•ใ‚ปใƒƒใƒˆใคใพใ‚Š $S$ ใฎ $i \geq 1$ ๆ–‡ๅญ—็›ฎใ‹ใ‚‰ๅง‹ใพใ‚‹ใจๅˆ†ใ‹ใ‚‹ใ€‚

Sใ‚’ๅ…ˆ้ ญใ‹ใ‚‰ใฎใ‚ชใƒ•ใ‚ปใƒƒใƒˆใ‚’่€ƒๆ…ฎใ—ใ€ $T$ ใŒ $L=i-1+N$ ๆ–‡ๅญ—็›ฎใง็ต‚ใ‚ใ‚‹ใจ่€ƒใˆใ‚‹ใ€‚ $S$ ใซใŠใ‘ใ‚‹ $T$ ใฎ้–‹ๅง‹ไฝ็ฝฎใฏๅพŒใ‚ใฎไฝ™็™ฝใŒใฉใ‚Œใ ใ‘ใ‚ใ‚‹ใ‹ใชใฎใงใ€ $L$ ใŒ3ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใชใ‚‰ $10^{10}-L/3+1$ ้€šใ‚Šใ€ใใ†ใงใชใ‘ใ‚Œใฐ $10^{10}-L/3$ ้€šใ‚Šใ‚ใ‚‹ใ€‚

ARC 110-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่ฒชๆฌฒๆณ•ใง่งฃใ‘ใ‚‹ใ€‚ไปฅไธ‹0-based indexingใง่€ƒใˆใ‚‹ใ€‚

$0$ ใŒไฝ็ฝฎ $i$ ใซใ‚ใ‚‹ใ€ใคใพใ‚Š $Pi = 0$ ใชใ‚‰ใ€ใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใงๅฎŸ้š›ใซ $P_i$ ใ‹ใ‚‰ $P_0$ ใซ็งปๅ‹•ใ™ใ‚‹ใ€‚ใ“ใฎใจใ $(P_{i-1},P_i) .. (P_0,P_1)$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใฎใงใ“ใฎ้ †ใซๆ“ไฝœใ‚’่จ˜้Œฒใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใฎๆ‰‹ใ‚’ๅพŒใงไฝฟใ†ใ“ใจใฏใงใใชใ„ใ€‚

$0$ ใ‚’ๅ›บๅฎšใ—ใŸใฎใงใ€ $left = 1..(N-2)$ , $right \quad s.t. \quad P_{right} = left$ ใซใคใ„ใฆๅŒๆง˜ใซใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใ‚’ๅฎŸ่กŒใ—ใ€ๆ“ไฝœไธ่ƒฝใชใ‚‰ -1 ใ‚’่ฟ”ใ™ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐใ€ๆ“ไฝœ้ †ใ‚’่จ˜้Œฒใ™ใ‚‹ใ€‚ๆ“ไฝœๅฏ่ƒฝใ‹ใฉใ†ใ‹ใฏใ€ $(P_i,P_{i+1})$ ใŒ1ใชใ‚‰ๆœชๆ“ไฝœใ€0ใชใ‚‰ๆ“ไฝœๆธˆใจใ„ใ†ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ‚’ไฝœใฃใฆ็ฎก็†ใ™ใ‚‹ใ€‚ $sum([left, right)) = right - left$ ใชใ‚‰ๆ“ไฝœๅฏ่ƒฝใ€ใใ†ใงใชใ‘ใ‚Œใฐๆ“ไฝœไธ่ƒฝใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚“ใ ใ‚‰ใ€ $[P_{left}, P_{right})$ ใ‚’ๅŒบ้–“ใ”ใจใซ็ขบๅฎšใ™ใ‚‹ใ“ใจใง $O(N)$ ใง่งฃใ„ใฆใ„ใ‚‹ใ€‚

ARC 111-120

ARC 111-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆฑ‚ใ‚ใ‚‹็ญ”ใˆใ‚’ $r$ ใจใ™ใ‚‹ใ€‚ $10^N = Ma + b : 0 \leq b < M$, $a = Mb + r, 0 \leq b < M$ ใ‹ใ‚‰ใ€ $10^N = M^2 ab + Mr + b$ ใ‚’ๅพ—ใ‚‹ใ€‚ใ‚ˆใฃใฆ $r = \lfloor (10^N mod M^2) / M \rfloor$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

$10^N mod M^2$ ใฏABC 167-DใจๅŒๆง˜ใซๅ‘จๆœŸ็š„ใซๆฑ‚ใ‚ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใคใพใ‚Š1ใ‚’ๅ‡บ็™บ็‚นใซใ€ $10 mod M^2, 10^2 mod M^2, ...$ ใ‚’้ †ใซๆฑ‚ใ‚ใฆใƒ‘ใ‚น $P$ ใ‚’ไฝœใ‚Šใ€ใ‚ตใ‚คใ‚ฏใƒซใจใ‚ตใ‚คใ‚ฏใƒซใซๅ…ฅใ‚‹ใพใงใ‚’ๅˆ†ใ‘ใ‚‹ใ€‚ใ‚ตใ‚คใ‚ฏใƒซใซๅ…ฅใ‚‹ใพใง(ใ‚ตใ‚คใ‚ฏใƒซใ‚’ๅซใพใชใ„) $L$ ใƒ›ใƒƒใƒ—ใ€ใ‚ตใ‚คใ‚ฏใƒซใฎๅ‘จๆœŸใ‚’ $C$ ใจใ™ใ‚Œใฐใ€ $10^N mod M^2$ ใฏไปฅไธ‹ใฎ้€šใ‚Šๆฑ‚ใพใ‚‹ใ€‚ๆทปใˆๅญ—ใฏ1-based indexingใจใ™ใ‚‹ใ€‚

  • $N \leq L$ ใชใ‚‰ $P[N]$
  • $N > L$ ใชใ‚‰ $P[L + (N - L) mod C]$

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹ใ‚ˆใ†ใซใ€ $mod M^2$ ใ ใ‘ใ‚ใ‚Œใฐใ€ใ‚ตใ‚คใ‚ฏใƒซๆคœๅ‡บใฏ่ฆใ‚‰ใชใ„ใ€‚ๆ•ฐๅ่กŒใŒไธ่ฆใ ใฃใŸใ€‚

ARC 111-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚ใ‚‹่‰ฒใŒไธ€ใคใฎใ‚ซใƒผใƒ‰ใซใ—ใ‹ใชใ‘ใ‚Œใฐๅ„ชๅ…ˆ็š„ใซไฝฟใ†ใ€‚ใ“ใฎ่ฒชๆฌฒๆณ•ใง่งฃใ‘ใ‚‹ใฏๆ€ใ‚ใชใ‹ใฃใŸใ€‚

$C[color]$ ใ‚’่‰ฒ $color$ ใŒๅก—ใฃใฆใ‚ใ‚‹ใ‚ซใƒผใƒ‰็•ชๅทใฎ้›†ๅˆใ€ $D[card]$ ใ‚’ใ‚ซใƒผใƒ‰ $card$ ใซๅก—ใฃใฆใ„ใ‚‹่‰ฒใฎ้›†ๅˆใงๅˆๆœŸๅŒ–ใ™ใ‚‹ใ€‚ใ‚ใ‚‹่‰ฒใŒๅก—ใฃใฆใ„ใ‚‹ใ‚ซใƒผใƒ‰ใŒไธ€็จฎ้กžใ€ใคใพใ‚Š $|C[color]| = 1$ ใจใชใ‚‹ $color$ ใ‚’ใ‚ญใƒฅใƒผใซๅ…ฅใ‚Œใ‚‹ใ€‚

ใ‚ญใƒฅใƒผใ‹ใ‚‰่‰ฒใ‚’ๅ–ใ‚Šๅ‡บใ—ใ€ใใฎ่‰ฒใŒๅก—ใฃใฆใ‚ใ‚‹ใ‚ซใƒผใƒ‰ $card$ ใ‚’ๆถˆ่ฒปใ™ใ‚‹ใ€‚ใคใพใ‚Šใ‚ซใƒผใƒ‰ $card$ ใฎ่ฃ้ขใฎ่‰ฒ $t$ ใซใคใ„ใฆใ€ $C[t]$ ใ‹ใ‚‰ $card$ ใ‚’้™คใใ€ $|C[t]| = 1$ ใชใ‚‰ใ‚ญใƒฅใƒผใซๅ…ฅใ‚Œใ‚‹ใ€‚ไฝตใ›ใฆ $D[card]$ ใ‚’็ฉบใ—ใ€็ญ”ใˆใฎ่‰ฒใฎ็จฎ้กžๆ•ฐใ‚’1ๅข—ใ‚„ใ™ใ€‚ $carad = t$ ใงใ‚‚้‡่ค‡ใ‚’ๆ•ฐใˆใชใ‘ใ‚Œใฐ็‰นใซ้…ๆ…ฎใ™ใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚

ใ“ใ‚Œใ‚’็นฐใ‚Š่ฟ”ใ™ใจๆฎ‹ใฃใŸใ‚ซใƒผใƒ‰ใฏ็Ÿญ่ชฟๆธ›ๅฐ‘ใชใฎใงใ€ใ„ใคใ‹ใ‚ญใƒฅใƒผใฏ็ฉบใซใชใ‚‹ใ€‚ใ“ใ“ใง $C[color]$ ใŒ2ไปฅไธŠใฎ่‰ฒใฏใ‚ซใƒผใƒ‰้–“ใฎไพๅญ˜้–ขไฟ‚ใŒๅพช็’ฐๅ‚็…งใชใฎใงใ€ไฝ•ใ‚‰ใ‹ใฎๆ–นๆณ•ใงๅก—ใ‚Œใ‚‹ใ€‚ใ‚ˆใฃใฆ $C[color]$ ใŒ้ž0ใฎ่‰ฒใฎๆ•ฐใ‚’็ญ”ใˆใซ่ถณใ™ใ€‚ใ“ใ‚ŒใŒๆฑ‚ใ‚ใ‚‹็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€้€ฃ็ตๆˆๅˆ†ใŒๆœจใ‹ใฉใ†ใ‹ๅˆคๅฎšใ™ใ‚‹ใ“ใจใฎๆ„ๅ‘ณใ‚’่งฃใ„ใฆใ„ใ‚‹ใ€‚ใ‚จใƒฌใ‚ฌใƒณใƒˆใช่งฃ่ชฌใงใ‚ใ‚‹ใ€‚ๆœŸใ›ใšใ—ใฆไธŠ่จ˜ใฎใ‚ขใƒซใ‚ดใƒชใ‚บใƒ ใฏๆœจใ‹ใฉใ†ใ‹ใฎๅˆคๅฎšใจๅŒใ˜ใ ใฃใŸใ€‚

ARC 111-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใฉใ†ใ—ใฆๆญฃ่งฃใงใใชใ„ใฎใ‹ๅˆ†ใ‹ใ‚‰ใชใ„ใ€‚

ๅˆๆœŸ็Šถๆ…‹ใง่งฃใชใ‚‰ 0 ใ€ไป–ไบบใฎ่ท็‰ฉใ‚’ๆŒใฃใฆใ„ใฆ้‡ใ™ใŽใ‚‹ใจใ $a_i \leq a_{p_i}$ ใฏ -1 ใงใ‚ใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใฏใ€ๆœฌๆฅใฎๆŒใกไธปใฎๆ–นใŒไฝ“้‡ใŒ่ปฝใ„ๆ™‚ใซใ€ๆœฌๆฅใฎๆŒใกไธปใซไบคๆ›ใจไบคๆ›ใ™ใ‚‹ใ€‚ $(a_i , a_{p_i=x}), (a_j , a_{p_j=i})$ ใ‚’ $(a_i , a_{p_j=i}), (a_j , a_{p_i=x})$ ใซไบคๆ›ใ™ใ‚‹ใจใใ€ $a_i > a_{p_i=x}, a_j > a_{p_j=i}$ ใชใฎใงใ€ $a_j \geq a_i$ ใชใ‚‰ $a_j \geq a_i > a_{p_i=x}$ ใงใ‚ใ‚‹ใ€‚

ใคใพใ‚Šไฝ“้‡ใŒ่ปฝใ„้ †ใซใ€ๆœฌๆฅใฎๆŒใกไธปใซไบคๆ›ใจไบคๆ›ใ™ใ‚‹ใ€‚ใปใจใ‚“ใฉๆญฃ่งฃใพใงๆ€ใ„ใคใ„ใŸใฎใซACใงใใชใ‹ใฃใŸใ€‚

ARC 112-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅผๅค‰ๅฝข

$A = B + C$ ใ‚ˆใ‚Š $L \leq B+C \leq R$ ใ‚’ๆบ€ใŸใ™ใ‚ˆใ†ใช $A,B,C$ ใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚ๆกไปถใ‚ˆใ‚Š $2L \leq B+C \leq 2R$ ใชใฎใงใ€ $A$ ใฎๅ–ใ‚‹ๅ€คใฏใ€

  • $R < 2L$ ใชใ‚‰่ฉฒๅฝ“ใ™ใ‚‹ $A$ ใฏ็„กใ—
  • ใใ†ใงใชใ‘ใ‚Œใฐ $2L \leq A \leq R (\leq 2R)$

ใงใ‚ใ‚‹ใ€‚ๅพŒ่€…ใฎใจใ $(B,C)$ ใŒๅ–ใ‚‹ๅฝ“ใŸใ‚Šใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $1..(R-2L+1)$ ้€šใ‚Šใชใฎใงใ€ $W=R-2L+1$ ใจ็ฝฎใ„ใฆ $W(W+1)/2$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ARC 112-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธๅฏงใซๆ•ฐใˆใ‚‹ใ€‚ใพใšๅง‹็‚น $B$ ใŒไธ€้€šใ‚Šใ‚ใ‚Šใ€ไปฅไธ‹ใ‚’่ฟฝๅŠ ใ™ใ‚‹ใ€‚

$B = 0$ ใชใ‚‰ไปฅไธ‹ใฎๅ’Œใงใ‚ใ‚‹ใ€‚

  • ่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ $\lfloor C/2 \rfloor$ ้€šใ‚Š
  • ่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ„ใฆใ‹ใ‚‰ใ€ไธ€ๅ›žใ ใ‘็ฌฆๅทใ‚’ๅ่ปขใ—ใฆๆญฃใฎๆ•ฐใซใชใ‚‹ $\lfloor (C-1)/2 \rfloor$ ้€šใ‚Š

$B > 0$ ใชใ‚‰ไปฅไธ‹ใฎๅ’Œใงใ‚ใ‚‹ใ€‚

  • ็ฌฆๅทใ‚’ๅ่ปขใ—ใฆ $-B$ ใซใชใ‚‹1้€šใ‚Šใจใ€่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ $\lfloor (C-1)/2 \rfloor$ ้€šใ‚Šใจใ€่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ„ใฆใ‹ใ‚‰ใ‚‚ใ†ไธ€ๅ›žใ ใ‘็ฌฆๅทใ‚’ๅ่ปขใ—ใฆๆญฃใฎๆ•ฐใซใชใ‚‹ $\lfloor (C-2)/2 \rfloor$ ้€šใ‚Š
  • $0$ ใซๅ‘ใ‹ใฃใฆๅ‹•ใ $P=min(B, \lfloor C/2 \rfloor)$ ้€šใ‚Šใจใ€ๅ‹•ใ„ใฆใ‹ใ‚‰ไธ€ๅ›žใ ใ‘็ฌฆๅทใ‚’ๅ่ปขใ—ใฆ่ฒ ใฎๆ•ฐใซใชใ‚‹ $P$ ้€šใ‚Šใฎใ€่จˆ $2P$ ้€šใ‚Šใ€‚ใŸใ ใ—ไปฅไธ‹ใฎใ„ใšใ‚Œใ‹ใซ่ฉฒๅฝ“ใ™ใ‚‹ใจใใฏใ€็ฌฆๅทใ‚’ๅ่ปขใงใใชใ„ใฎใง1้€šใ‚Šๆธ›ใ‚‰ใ™ใ€‚
    • $B \leq \lfloor C/2 \rfloor$ ใฎใจใ($0$ ใซใŸใฉใ‚Š็€ใใฎใง)
    • $C$ ใŒๅฅ‡ๆ•ฐ(็ฌฆๅทใ‚’ๅ่ปขใ™ใ‚‹ๆฎ‹ใ‚Š้‡‘้กใฏ็„กใ„)

$B < 0$ ใชใ‚‰ไปฅไธ‹ใฎๅ’Œใงใ‚ใ‚‹ใ€‚

  • ่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ $\lfloor C/2 \rfloor$ ้€šใ‚Š
  • ่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใฃใฆๅ‹•ใ„ใฆใ‹ใ‚‰ใ€ไธ€ๅ›žใ ใ‘็ฌฆๅทใ‚’ๅ่ปขใ—ใฆๆญฃใฎๆ•ฐใซใชใ‚‹ $\lfloor (C-1)/2 \rfloor$ ้€šใ‚Š
  • ็ฌฆๅทใ‚’ๅ่ปขใ—ใฆ $-B$ ใซใชใ‚‹1้€šใ‚Šใจใ€ $0$ ใซๅ‘ใ‹ใฃใฆๅ‹•ใ $P=min(B, \lfloor (C-1)/2 \rfloor)$ ้€šใ‚Šใจใ€ๅ‹•ใ„ใฆใ‹ใ‚‰ไธ€ๅ›žใ ใ‘็ฌฆๅทใ‚’ๅ่ปขใ—ใฆ่ฒ ใฎๆ•ฐใซใชใ‚‹ $P$ ้€šใ‚Šใฎใ€่จˆ $2P+1$ ้€šใ‚Šใ€‚ใŸใ ใ—ไปฅไธ‹ใฎใ„ใšใ‚Œใ‹ใซ่ฉฒๅฝ“ใ™ใ‚‹ใจใใฏใ€็ฌฆๅทใ‚’ๅ่ปขใงใใชใ„ใฎใง1้€šใ‚Šๆธ›ใ‚‰ใ™ใ€‚
    • $B \leq \lfloor (C-1)/2 \rfloor$ ใฎใจใ($0$ ใซใŸใฉใ‚Š็€ใใฎใง)
    • $C-1$ ใŒๅฅ‡ๆ•ฐใคใพใ‚Š $C$ ใŒๅถๆ•ฐ(็ฌฆๅทใ‚’ๅ่ปขใ™ใ‚‹ๆฎ‹ใ‚Š้‡‘้กใฏ็„กใ„)

ๅ…ฌๅผ่งฃ่ชฌใฏ $C$ ใฎๅถๅฅ‡ใงๅˆ†ใ‘ใฆใ„ใ‚‹ใ€‚

ARC 112-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่งฃ่ชฌใ‚’่ชญใ‚“ใงใ‚‚ใชใ‹ใชใ‹ๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

้ƒจๅˆ†ๆœจใŒ้ ‚็‚นๆ•ฐใŒ $N$ ใชใ‚‰ใ€้ƒจๅˆ†ๆœจใฎๆ‰‹็•ชใฏ $3N$ ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $N$ ใŒๅถๆ•ฐใชใ‚‰่‡ชๅˆ†ใฎๆ‰‹็•ชใง้ƒจๅˆ†ๆœจใ‹ใ‚‰ๆˆปใ‚Šใ€ $N$ ใŒๅฅ‡ๆ•ฐใชใ‚‰็›ธๆ‰‹ใฎๆ‰‹็•ชใง้ƒจๅˆ†ๆœจใ‹ใ‚‰ๆˆปใ‚‹ใ€‚ๅฅ‡ๆ•ฐๆ‰‹็•ชใชใ‚‰ใ€ๆœ‰ๅˆฉใชใ‚‚ใฎใ‹ใ‚‰ไบคไบ’ใซๅ–ใ‚Œใฐใ‚ˆใ„ใ€‚ใจๅคงใพใ‹ใชๆ–น้‡ใฏ็ซ‹ใฃใŸใŒใใ‚ŒไปฅไธŠใฎใ“ใจใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

่ฆ‹่ฝใจใ—ใŸ็‚นใจใ—ใฆใ€้ ‚็‚นๆ•ฐใŒๅถๆ•ฐใงๆใ™ใ‚‹้ƒจๅˆ†ๆœจใฏๅพŒๅ›žใ—ใซใ™ใ‚‹ใ“ใจใงใ‚ใ‚‹ใ€‚้ ‚็‚นๆ•ฐใŒๅถๆ•ฐใงๅพ—ใ™ใ‚‹้ƒจๅˆ†ๆœจใฏๅ…ˆใซ่จชใ‚Œใฐใ‚ˆใ„ใŒใ€ๅธธใซๅ…ˆใซ่จชใ‚Œใ‚‹ใจๅ‹˜้•ใ„ใ—ใŸใ€‚ใใฎใŸใ‚ๆญฃ่งฃใซใŸใฉใ‚Š็€ใ‘ใชใ‹ใฃใŸใ€‚

ๅพŒใฏๅ…ˆๆ‰‹ใจๅพŒๆ‰‹ใฎใ‚„ใ‚„ใ“ใ—ใ•ใ‚’ใ€่งฃ่ชฌใฎๅฎŸ่ฃ…ใ‹ใ‚‰่ชญใฟ่งฃใใ€‚็ฌฆๅทใ‚’ ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ ๆ–นใŒ็†่งฃใ—ใ‚„ใ™ใ„ใ€‚

ARC 113-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธๅฏงใซๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹

  • $K=1$ ใชใ‚‰1้€šใ‚Š
  • 3ใคใฎๆ•ฐใŒๅŒใ˜ x ้ †ๅˆ—ใฏ1้€šใ‚Šใ€‚ $i^3 \leq K$ ใจใชใ‚‹ $i$ ใฎๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚
  • 2ใคใฎๆ•ฐใŒๅŒใ˜ใ ใŒใ€3ใคใฎๆ•ฐใŒๅŒใ˜ใงใฏใชใ„ x ้ †ๅˆ—ใฏ3้€šใ‚Šใ€‚ $i^2 < K$ ใ‹ใค $k/i^2 \ne i$ ใจใชใ‚‹ $i$ ใฎๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚
  • 3ใคใฎๆ•ฐใŒ็•ฐใชใ‚‹ x ้ †ๅˆ—ใฏ6้€šใ‚Šใ€‚ $a < b < c$ ใ‹ใค $k/ab > b$ ใจใชใ‚‹็ต„ใฟๅˆใ‚ใ›ใ‚’็ถฒ็พ…ใ™ใ‚‹ใ€‚

ARC 113-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒฉใ‚คใƒ–ใƒฉใƒช

$A^B \quad mod \quad 10$ ใซใฏๅ‘จๆœŸๆ€งใŒใ‚ใ‚‹ใ€‚ไพ‹ใˆใฐ $A=1$ ใชใ‚‰ $A^{1..} = 1,1,...$, $A=2$ ใชใ‚‰ $A^{1..} = 2,4,8,16,2(32),...$, ใงใ‚ใ‚‹ใ€‚ๆœ€ๅˆใซ $A=0..9$ ใซใคใ„ใฆไธ€ๅ‘จใ™ใ‚‹ใพใงใซๅ‡บใ‚‹ๅ€คใ‚’ๆฑ‚ใ‚ใฆ็ฝฎใใ€‚้ณฉใฎๅทฃๅŽŸ็†ใ‹ใ‚‰ใ€11ไน—ใพใง่ชฟในใ‚Œใฐๅๅˆ†ใงใ‚ใ‚‹(ๅฎŸ้š›ใฏใ‚‚ใฃใจ็Ÿญใ„)ใ€‚

ไธ€่ˆฌใซ $(A^B)^C \ne A^{(B^C)}$ ใชใฎใงๆณจๆ„ใงใ‚ใ‚‹ใ€‚ $A$ ใฎๅ‘จๆœŸ $p$ ใŒๆฑ‚ใพใ‚‹ใฎใงใ€ $B^C \quad mod \quad p$ ใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ€ๅ…ˆใฎๅ‘จๆœŸใ‹ใ‚‰็ญ”ใˆใŒๅˆ†ใ‹ใ‚‹ใ€‚ใ“ใ‚Œใฏ atcoder::modint::set_mod(cycle_A) ใ—ใฆ B.pow(c).val() ใ™ใ‚Œใฐใ„ใ„ใ€‚ใƒฉใ‚คใƒ–ใƒฉใƒชใ‚’ไฝฟใ‚ใšใซๆฑ‚ใ‚ใ‚‹ๆ–นๆณ•ใ‚’ๅฟ˜ใ‚Œใฆใ—ใพใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏๅ‘จๆœŸใ‚’ๆญฃ็ขบใซๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚

ARC 113-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไบŒๆ™‚้–“ๆŽ›ใ‹ใฃใŸใ€‚

ไธญๆ–ญใ‚’ไฝ•ๅบฆใ‹ๆŒŸใ‚“ใงACใงใใŸใ€‚ๆ–น้‡ใฏ่ฆ‹ใˆใฆใ„ใŸใŒ็ดฐ้ƒจใฎ่ฉฐใ‚ใŒไธŠๆ‰‹ใใ„ใ‹ใชใ‹ใฃใŸใ€‚

ๆœ€ๅˆใซ $S$ ใ‚’ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นๅœง็ธฎใ™ใ‚‹ใ€‚ไฝตใ›ใฆๆ–‡ๅญ— $A..Z = 0..25$ ใŒใ€ $S$ ใฎๅ…ˆ้ ญใ‹ใ‚‰ไฝ•ๅ›žๅ‡บ็พใ—ใŸใ‹็ดฏ็ฉๅ’Œใ‚’ๅ–ใ‚‹ใ€‚

ๅœง็ธฎๅพŒใฎๆ–‡ๅญ—ๅˆ—ใ‚’ๆœซๅฐพใ‹ใ‚‰(ๆทปใˆๅญ—ใฎๅคงใใ„ๆ–นใ‹ใ‚‰)้ †ใซๅ‡ฆ็†ใ™ใ‚‹ใ€‚้•ทใ•1ใฎใƒฉใƒณใฏ็„ก่ฆ–ใ™ใ‚‹ใ€‚้•ทใ•2ไปฅไธŠใฎใƒฉใƒณ $[L,R]$ ใŒใ‚ใ‚‹ใจใใ€ใใฎใƒฉใƒณใ‚’ๅปถใฐใ—ใฆๆ“ไฝœใ‚’็นฐใ‚Š่ฟ”ใ›ใ‚‹ใ‹ใฉใ†ใ‹ๅˆคๆ–ญใ™ใ‚‹ใ€‚

ๅ‰ใฎๆ“ไฝœใง $[l,r]$ ใ‚’็ฝฎใๆ›ใˆใŸใจใ™ใ‚‹ใ€‚ๆœ€ๅˆใฎๆ“ไฝœใซใคใ„ใฆใฏใ€ๅ‰ใฎๆ“ไฝœใ‚’ $[N+1,N+1]$ ใจใฟใชใ™ใ€‚

$c = S[R]$ ใŒๅ‰ใฎๆ“ไฝœใฎๆ–‡ๅญ— $p$ ใจ็•ฐใชใ‚‹ใชใ‚‰(ๅˆๅ›žใฎๆ“ไฝœใฏๅฟ…ใš็•ฐใชใ‚‹ใจใ™ใ‚‹)ใ€ $S$ ใฎๆœซๅฐพใพใงใคใพใ‚Š $[R+1,N]$ ใ‚’ $c$ ใซ็ฝฎใๆ›ใˆใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใชใœใชใ‚‰ $[R+1,N]$ ใซใŠใ„ใฆใ€ $c$ ใŒ้€ฃ็ถšใ™ใ‚‹็ฎ‡ๆ‰€ใฏไป–ใฎๆ–‡ๅญ—ๅˆ—ใง็ฝฎใๆ›ใ‚ใฃใฆใ„ใ‚‹ใ‹ใ‚‰ใ ใ€‚ $[R+1,l-1]$ ใฎใ†ใก $c$ ใŒๅ˜็‹ฌใงๅ‡บ็พใ™ใ‚‹ใจใใฏๆ“ไฝœใงใใชใ„ใŒใ€ $c$ ใŒ้€ฃ็ถšใงๅ‡บ็พใ™ใ‚‹ใ“ใจใฏใชใ„(ใใฎใ‚ˆใ†ใซๆ“ไฝœ้ †ใ‚’ๆฑบใ‚ใŸใฎใง)ใ€‚ $[R+1,l-1]$ ใซๅซใพใ‚Œใ‚‹ $c$ ใ‚’ $M$ ๅ€‹ใจใ—ใฆใ€ๆ“ไฝœๅ›žๆ•ฐใฏ $N - R - M$ ๅ›žๆ“ไฝœใงใใ‚‹ใ€‚

$c = S[R]$ ใŒๅ‰ใฎๆ“ไฝœใฎๆ–‡ๅญ— $p$ ใจๅŒใ˜ใชใ‚‰ใ€ๅ‰ใฎๆ“ไฝœใฎๅทฆ็ซฏใพใง $[R+1,l-1]$ ใ‚’ $c$ ใซ็ฝฎใๆ›ใˆใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ไธŠ่จ˜ใจๅŒๆง˜ใซใ€ๆ“ไฝœๅ›žๆ•ฐใฏ $l - 1 - R - M$ ๅ›žๆ“ไฝœใงใใ‚‹ใ€‚

ใ“ใ‚Œใ‚‰ใฎๆ“ไฝœๅ›žๆ•ฐใฎๅ’ŒใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ๅขƒ็•ŒๆกไปถใŒใ‚„ใ‚„ใ“ใ—ใ„ใ€‚

ไป–ใฎๆ–นใฎ ่งฃๆณ• ใŒ็†่งฃใ—ใ‚„ใ™ใ„ใฎใงใ€ใ“ใฎๆ–น้‡ใ‚’ๅŸบใซๆฑ‚ใ‚ใ‚‹ใ€‚

$S$ ใ‚’ๆœซๅฐพใ‹ใ‚‰ๅ…ˆ้ ญใซ้ †ใซ่ตฐๆŸปใ™ใ‚‹ใ€‚0-based indexingใง $i=(N-1)..0$ ใจใ—ใ€ไพฟๅฎœไธŠ $S$ ใฎๆœซๅฐพใซใฏใฉใฎ่‹ฑๅฐๆ–‡ๅญ—ใจใ‚‚ไธ€่‡ดใ—ใชใ„ .* ใ‚’่ฟฝๅŠ ๆธˆใจใ™ใ‚‹ใ€‚

  • $S[i] = S[i+1] \land S[i+1] \ne S[i+2]$ ใฎใจใใ€ใใ‚ŒไปฅๅพŒใฎๆ–‡ๅญ—ใ‚’ $S[i]$ ใง็ฝฎใๆ›ใˆใ‚‹ใ€‚ไฝ•ๆ–‡ๅญ—็ฝฎใๆ›ใˆๅฏ่ƒฝใ‹ใฏไปฅไธ‹ใงๆฑ‚ใ‚ใ‚‹ใ€‚
    • ใ“ใ‚Œใพใง่ฆ‹ใŸ $S[j] = S[j+1]$ ใŒๆˆ็ซ‹ใ™ใ‚‹ๆœ€ๅพŒใฎไฝ็ฝฎ $j$ ใ‚’ $prevP$ , $prevC = S[prevP]$ ใจใ™ใ‚‹ใ€‚ๅˆๆœŸๅ€คใฏ $prevP = |S|$ ใจใ™ใ‚‹ใ€‚
    • $S[i..prevP)$ ใซใ‚ใ‚‹ใ€้ž้€ฃ็ถšใช $S[j]$ ใชๅ‡บ็พๅ›žๆ•ฐใ‚’ $C$ ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใฏ a..z ใซใคใ„ใฆใ€ๅ‡บ็พไฝ็ฝฎใซๅฏพใ™ใ‚‹็ดฏ็ฉๅ’Œใ‚’ใ‚ใ‚‰ใ‹ใ˜ใ‚ๆฑ‚ใ‚ใ‚Œใฐใ‚ใ‹ใ‚‹ใ€‚
    • $S[i] = prevC$ ใชใ‚‰ใ€้€ฃ็ถšใ™ใ‚‹ๆฌกใฎ $S[i]$ ใพใงๆ“ไฝœใงใใ‚‹ใฎใง $prevP - (i+2) - C$ ใ‚’่งฃใซ่ถณใ™
    • $S[i] \ne prevC$ ใชใ‚‰ใ€ $S$ ใฎๆœซๅฐพใพใงๆ“ไฝœใงใใ‚‹ใฎใง $|S| - (i+2) - C$ ใ‚’่งฃใซ่ถณใ™
  • $S[i] = S[i+1]$ ใชใ‚‰ใ€ $prevP = i, prevC = S[i]$ ใจใ™ใ‚‹

ARC 113-D

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไบŒๆ—ฅๆŽ›ใ‹ใฃใŸใ€‚

$A$ ใฎๆœ€ๅฐๅ€คใ‚’ $1..K$ ใซๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใจ็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใŒๅŽ„ไป‹ใชใฎใงๅ…ˆใซ่€ƒใˆใ‚‹ใ€‚

$N = 1, M = 1$ ใชใ‚‰ไธ€ใƒžใ‚นใ—ใ‹ใชใ„ใฎใงใ€ใใฎใƒžใ‚นใฎๅŸ‹ใ‚ๆ–นใŒๅ…จใฆใง็ญ”ใˆใฏ $K$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ใฎ่ชฌๆ˜Žใงใ€0ใฎ็ดฏไน—ใฏ0ใจใ™ใ‚‹ใ€‚

$N = 1, M > 1$ ใชใ‚‰ $A_{1} = i = 1..K$ ใซๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใ€‚ใ“ใฎใจใๅ„ใƒžใ‚นใฎๅ€คใฏ $i$ ไปฅไธŠใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $i$ ไปฅไธŠใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $(K-i+1)^M$ ้€šใ‚Šใ€ $i+1$ ไปฅไธŠใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $(K-i)^M$ ้€šใ‚Šใชใฎใงใ€ $i$ ใ‚’ๅฐ‘ใชใใจใ‚‚ไธ€ใคๅซใ‚€็ต„ใฟๅˆใ‚ใ›ใฏ $(K-i+1)^M - (K-i)^M$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ใ™ในใฆใฎ $i$ ใซใคใ„ใฆ่ถณใ—ใŸใ‚‚ใฎใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ใ‚ˆใ่€ƒใˆใŸใ‚‰ใ“ใ‚Œใฏ $K^N$ ใงใ‚ใ‚‹ใ€‚

$N > 1, M = 1$ ใชใ‚‰ $B_{1} = i = 1..K$ ใซๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใ€‚ใ“ใฎใจใๅ„ใƒžใ‚นใฎๅ€คใฏ $i$ ไปฅไธ‹ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $i$ ไปฅไธ‹ใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $i^N$ ้€šใ‚Šใ€ $i$ ๆœชๆบ€ใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $(i-1)^N$ ้€šใ‚Šใชใฎใงใ€ $i$ ใ‚’ๅฐ‘ใชใใจใ‚‚ไธ€ใคๅซใ‚€็ต„ใฟๅˆใ‚ใ›ใฏ $i^N - (i-1)^N$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ใ™ในใฆใฎ $i$ ใซใคใ„ใฆ่ถณใ—ใŸใ‚‚ใฎใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

$N > 1, M > 1$ ใชใ‚‰ใ€ใ‚ใ‚‹ $i \in [1,K]$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆ $\forall j : A_j \leq i$ , $\exists j : A_j = i$ ใจใ™ใ‚‹ใ€‚ใ“ใฎใจใ $A$ ใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $i^N - (i-1)^N$ ้€šใ‚Šใ€ $B$ ใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $(K-i+1)^M$ ใงใ‚ใ‚‹ใ€‚ $N = 1$ ใพใŸใฏ $M = 1$ ใจ็•ฐใชใ‚Šใ€ $B > i$ ใฎๅ ดๅˆใŒใ‚ใฃใฆใ‚‚ๆง‹ใ‚ใชใ„ใ€‚ใ“ใ‚Œใ‚’ใ™ในใฆใฎ $i$ ใซใคใ„ใฆ่ถณใ—ใŸใ‚‚ใฎใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚‚ไธŠ่จ˜ใจใฏ็•ฐใชใ‚‹่กจ็พใงๅŒใ˜ๅผใ‚’ๅฐŽใ„ใฆใ„ใ‚‹ใ€‚

ARC 114-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ทๅฝ“ใŸใ‚Š

ใ„ใ„ๆ„Ÿใ˜ใซ็ด ๅ› ๆ•ฐใ‚’้›†ใ‚ใ‚ˆใ†ใจใ—ใฆๅคฑๆ•—ใ—ใ€็ตๅฑ€็ทๅฝ“ใŸใ‚Šใซใ—ใŸใ€‚50ไปฅไธ‹ใฎ็ด ๆ•ฐใฏ15ๅ€‹ใ—ใ‹ใชใ„ใฎใงใ€็ด ๆ•ฐใฎ้ธใณๆ–นใฏ32768้€šใ‚Šใงใ‚ใ‚‹ใ€‚้ธใ‚“ใ ็ด ๆ•ฐใ‚’้ธใ‚“ใงๆŽ›ใ‘ใฆใ€ $X_i$ ใจใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒใ™ในใฆ1ใ‚ˆใ‚Šๅคงใใ„ใ‚‚ใฎใซใคใ„ใฆใ€ใใฎๆœ€ๅฐๅ€คใ‚’ๅ–ใ‚Œใฐใ‚ˆใ„ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚‚ไธŠ่จ˜ใฎ้€šใ‚Šใชใฎใงใ€็ด ๅ› ๆ•ฐใ‚’ไธŠๆ‰‹ใ้›†ใ‚ใ‚‹ๆ–นๆณ•ใŒใชใ•ใใ†ใ ใ€‚

ARC 114-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ…จๅ˜ๅฐ„

$T$ ใŒ $f$ ใซใคใ„ใฆๅ…จๅ˜ๅฐ„ใ€ใคใพใ‚Š $f(T)$ ใฎๅ…จใฆใฎ่ฆ็ด ใฏ $T$ ใซๅฑžใ—ใ€ $f$ ใฎ้€†้–ขๆ•ฐ $f^{-1}$ ใŒๅญ˜ๅœจใ™ใ‚‹ใ“ใจใ‚’่ฆ่ซ‹ใ™ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $T$ ใฏใ€ $i$ ใ‹ใ‚‰ $f(i)$ ใธใฎไพๅญ˜้–ขไฟ‚ใ‚’ๆœ‰ๅ‘ใ‚ฐใƒฉใƒ•ใซใ—ใŸใจใใซใ‚ตใ‚คใ‚ฏใƒซใ‚’ๆง‹ๆˆใ™ใ‚‹ใ“ใจใจๅŒใ˜ใงใ‚ใ‚‹(้ณฉใฎๅทฃๅŽŸ็†ใ‚ˆใ‚Šใ€ $f$ ใ‚’้ซ˜ใ€… $N$ ๅ›ž้ฉ็”จใ™ใ‚Œใฐใ€ใ‚ตใ‚คใ‚ฏใƒซใชใ‚‰ $i$ ใซๆˆปใ‚‹)ใ€‚

ใ‚ˆใฃใฆใ“ใฎๆœ‰ๅ‘ใ‚ฐใƒฉใƒ•ใ‚’ๅผท้€ฃ็ตๆˆๅˆ†ๅˆ†่งฃใ—ใฆ $M$ ่ฆ็ด ใซใชใฃใŸใจใใ€ๅผท้€ฃ็ตๆˆๅˆ†ใฎ็ฉบใงใฏใชใ„็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐ $2^M - 1$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 115-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ˜่ชฟๆธ›ๅฐ‘

ไบŒไบบใฎ่งฃ็ญ”ใฎ1ใฎๆ•ฐใŒ(ใ‚ใ‚‹ใ„ใฏ0ใฎๆ•ฐใŒ)ๅถๆ•ฐๅ€‹็•ฐใชใ‚Œใฐใ€ๆญฃ่งฃๆ•ฐใ‚’็ญ‰ใ—ใใงใใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใ€‚ 0 ใพใŸใฏ 1 ใŒไธ€่‡ดใ™ใ‚‹ๅ•้กŒใฏใใฎๆญฃ่งฃใŒใฉใ†ใ‚ใ‚Œๆญฃ่งฃๆ•ฐใŒไธ€่‡ดใ™ใ‚‹ใ€‚้•ใฃใฆใ„ใ‚‹ใ‚‚ใฎใฎๅŠๅˆ†ใฏๆญฃ่งฃใ‚’ๅ–ใ‚Šๆ•ขใˆใš 0 ใซๆฑบใ‚ๆ‰“ใกใ—ใ€ๆญฃ่งฃๆ•ฐใŒ้•ใฃใŸใ‚‰ไธ€ใคใšใค 0 ใ‚’ 1 ใซๅค‰ใˆใ‚Œใฐใ€ๆญฃ่งฃๆ•ฐใŒๅคšใ„ๆ–นใฏ1ๆธ›ใฃใฆๆญฃ่งฃๆ•ฐใŒๅฐ‘ใชใ„ๆ–นใฏ1ๅข—ใˆใ‚‹ใฎใงใ€ใ„ใคใ‹ใฏๆญฃ่งฃๆ•ฐใŒไธ€่‡ดใ™ใ‚‹ใ€‚้€†ใซไบŒไบบใฎ่งฃ็ญ”ใฎ1ใฎๆ•ฐใŒ(ใ‚ใ‚‹ใ„ใฏ0ใฎๆ•ฐใŒ)ๅฅ‡ๆ•ฐๅ€‹็•ฐใชใ‚‹ใจใใฏไธ€่‡ดใ•ใ›ใ‚‹ใ“ใจใŒใงใใชใ„ใ€‚

ใ‚ˆใฃใฆ่งฃ็ญ”ใฎ1ใฎๆ•ฐใŒ $0..M$ ๅ€‹ใงใ‚ใ‚‹ใ‚ˆใ†ใช็”Ÿๅพ’ใฎไบบๆ•ฐ $P_i$ ใ‚’ๆ•ฐใˆใ€ ่งฃ็ญ”ใฎ1ใฎๆ•ฐใŒ $i$ ๅ€‹ใฎใจใใ‹ใค $i+1,i+3,...$ ๅ€‹ใซใชใ‚‹ใ‚ˆใ†ใช็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใ‚’ๆ•ฐใˆใ‚Œใฐใ‚ˆใ„ใ€‚ใคใพใ‚Š $\sum_{i=0}^M \sum_{j=i+1}^M P_i P_j$ ใŸใ ใ— $(i-j) \quad mod \quad 2=1$ ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใงใฏใ€ 1 ใจ่งฃ็ญ”ใ—ใŸๅ•้กŒๆ•ฐใŒๅฅ‡ๆ•ฐใฎ็”Ÿๅพ’ใฎไบบๆ•ฐใจๅถๆ•ฐใฎ็”Ÿๅพ’ใฎไบบๆ•ฐใฎ็ฉใจใ‚ใ‚‹ใ€‚ใ—ใพใฃใŸใ€ใใ†ใพใจใ‚ใ‚‰ใ‚ŒใŸใฎใ‹ใ€‚

ARC 115-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่งฃใซไธ€ๆ„ๆ€งใŒใชใ„ใ€‚

$A$ ใ‚’1ใšใคๅข—ใ‚„ใ—ใฆใ‚‚ $B$ ใ‚’1ใšใคๅข—ใ‚„ใ—ใฆใ‚‚ใฉใกใ‚‰ใ‚‚่งฃใฎๆกไปถใ‚’ๆบ€ใŸใ™ใ€‚ใ‚ˆใฃใฆ่งฃใซไธ€ๆ„ๆ€งใŒใชใ„ใ€‚ใ“ใ‚Œใซๆฐ—ใŒไป˜ใ‹ใชใใฆ1ๆ™‚้–“ๆŽ›ใ‹ใฃใŸใ€‚

$r$ ่กŒ็›ฎใ‚’่ถณใ™ใจ $\sum_{i=1}^N{C_{r,i}} = \sum_{i=1}^N{(A_r+B_{i})}$ ใงใ‚ใ‚‹ใ€‚ $B$ ใฏๅ„่กŒใซๅ…ฑ้€šใชใฎใงใ‚ญใƒฃใƒณใ‚ปใƒซใ™ใ‚‹ใ“ใจใŒใงใใฆใ€่กŒใฎๅ’Œใ‚’ๅผ•ใใ“ใจใง $A_{r}$ ใจ $A_{1}$ ใฎๅทฎๅˆ†ใ‚’ๅพ—ใ‚‰ใ‚Œใ‚‹ใ€‚

$N(A_{r} - A_{1}) = \sum_{i=1}^N{(A_r+B_{i})} - \sum_{i=1}^N{(A_1+B_{i})} = \sum_{i=1}^N ({C_{r,i}} - {C_{1,i}})$ ใ‹ใ‚‰ $DA_r = (A_{r} - A_{1})$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ๅŒๆง˜ใซๅˆ—ใฎๅทฎๅˆ†ใ‚’ๅ–ใฃใฆใ€ $N(B_{c} - B_{1}) = \sum_{i=1}^N{(B_c+A_{i})} - \sum_{i=1}^N{(B_1+A_{i})} = \sum_{i=1}^N ({C_{i,c}} - {C_{i,1}})$ ใ‹ใ‚‰ $DB_c = (A_{c} - A_{1})$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ใ‚ˆใฃใฆ $A_1,B_1$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใŸใจใใซใ€ $A_{2..N},B_{2..N}$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $A,B$ ใŒๅญ˜ๅœจใ™ใ‚‹ๆกไปถใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • ๅ„่กŒใซใคใ„ใฆใ€ๅˆ—ๆ–นๅ‘ใฎๅทฎๅˆ†ใŒ็ญ‰ใ—ใ„ใ€‚ใคใพใ‚Š $\forall r, \forall c=1..N : C_{r,c} - C_{r,1} = C_{1,c} - C_{1,1}$ ใงใ‚ใ‚‹ใ€‚
  • ๅ„ๅˆ—ใซใคใ„ใฆใ€่กŒๆ–นๅ‘ใฎๅทฎๅˆ†ใŒ็ญ‰ใ—ใ„ใ€‚ใคใพใ‚Š $\forall c, \forall r=1..N : C_{r,c} - C_{1,c} = C_{r,1} - C_{1,1}$ ใงใ‚ใ‚‹ใ€‚
  • $A_i,B_i$ ใซไธ‹้ง„ใ‚’ๅฑฅใ‹ใ›ใ‚‹ใ“ใจใง $C$ ใ‚’้ž่ฒ ใซใงใใ‚‹ใ€‚ใคใพใ‚Š $C$ ใ‚’้ž่ฒ ใซใ™ใ‚‹ใŸใ‚ใซใฏ $A$ ใซ $AD=max(0, A_1 - A_i)$, $B$ ใซ $BD=max(0, B_1 - B_j)$ ใ ใ‘ไธ‹้ง„ใ‚’ๅฑฅใ‹ใ›ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚Šใ€ $C_{1,1} \ge AD+BD$ ใงใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚

ไธŠ่จ˜ใ‚’ๆบ€ใŸใ•ใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚ใ™ในใฆๆบ€ใŸใ™ใชใ‚‰็ญ”ใˆใฏ Yes ใงใ€ $A_{1..N}=DA_{1..N} + AD$, $B_{1..N}=DB_{1..N} + BD + (C_{1,1} - AD -BD) = DB_{1..N} + C_{1,1} - AD$ ใŒ็ญ”ใˆใฎไธ€ใคใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ‚‚ใฃใจ็ฐกๆฝ”ใงใ‚ใ‚‹ใ€‚่งฃใซไธ€ๆ„ๆ€งใŒใชใ„ใฎใงใ€ $A$ ใฎๆœ€ๅฐๅ€คใ‚’0ใซๅ›บๅฎšใ—ใฆใ„ใ‚‹ใ€‚ใ“ใ‚Œใฏๆฐ—ใŒไป˜ใ‹ใชใ‹ใฃใŸใ€‚ๅฎŸ่ฃ…ใฏ ใ“ใกใ‚‰

ARC 115-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณ

็ด„ๆ•ฐใ‚’ๅˆ—ๆŒ™ใ™ใ‚Œใฐใ„ใ„ใจๆ€ใฃใŸใŒใ€ $i=4$ ใฎใจใใซ3ใซใชใ‚‹ใฎใงใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚‹ใ—ใ‹ใชใ‹ใฃใŸใ€‚ $i=1..N$ ใซใคใ„ใฆ

  • ไฝฟใฃใฆใฏใ„ใ‘ใชใ„ๆ•ฐใ‚’้›†ๅˆใงๆŒใก
  • $1..$ ใซใคใ„ใฆไฝฟใฃใฆใ„ใ„ๆ•ฐใ€ใคใพใ‚Šไฝฟใฃใฆใฏใ„ใ‘ใชใ„ๆ•ฐใซ่กจใ‚Œใชใ„ๆœ€ๅฐใฎๆ•ฐ $j$ ใ‚’ๆฑ‚ใ‚
  • $2i,3i,...$ ใซไฝฟใฃใฆใฏใ„ใ‘ใชใ„ๆ•ฐ $j$ ใ‚’่จญๅฎšใ™ใ‚‹ใ€‚ใ“ใฎๅ›žๆ•ฐใฏ่ชฟๅ’Œ็ดšๆ•ฐใ‚’ๆ€ใ„ๅ‡บใ›ใฐใ€ $O(N^2)$ ใซใชใ‚‰ใชใ„ใจๅˆ†ใ‹ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใฏใ‚‹ใ‹ใซใ‚จใƒฌใ‚ฌใƒณใƒˆใงใ‚ใ‚‹ใ€‚็ด„ๆ•ฐใซ็€็›ฎใ—ใŸใฎใฏ้–“้•ใ„ใงใ€ๆญฃ่งฃใฏ็ด ๅ› ๆ•ฐใฎๆ•ฐใ ใฃใŸใ€‚

ARC 116-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ™‚้–“ๅˆถ้™ใŒๅŽณใ—ใ„ใ€‚

C++ใง1249msๆŽ›ใ‹ใฃใŸใ€‚ใ—ใ‹ใ‚‚่งฃๆณ•ใŒ้–“้•ใฃใฆใ„ใ‚‹ใฎใซACใ—ใŸใ€‚

็ด„ๆ•ฐใ‚’ๆฑ‚ใ‚ใฆๆ•ฐใˆใ‚Œใฐใ„ใ„ใฎใ ใŒใ€ใใฎใพใพๆ•ฐใˆใ‚‹ใจ $N$ ใŒๅทจๅคงใช็ด ๆ•ฐใฎใจใTLEใ™ใ‚‹ใ€‚ใพใš $N$ ใ‚’2ใงๅ‰ฒใ‚Œใ‚‹ใ ใ‘ๅ‰ฒใฃใฆใ€็ด ๅ› ๆ•ฐ2ใฎๆ•ฐ $P \geq 0$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใ“ใฎๅพŒ $N$ ใฏๅฟ…ใšๅฅ‡ๆ•ฐใซใชใฃใฆใ„ใ‚‹ใ€‚ $10^{18/6} = 1000$ ใชใฎใงใ€ๅฐ‘ใ—ๅคšใ‚ใซไธŠ้™ 1009 ใพใงใฎๆ•ฐใซใคใ„ใฆ็ด„ๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ“ใจใซใ™ใ‚‹ใ€‚ใใฎๅ‰ใซ $N^{1/6}$ ใ‚ˆใ‚Šๅคงใใ„็ด„ๆ•ฐใ‚’ๆŽขใ™ใ€‚

  • $N^{1/6}$ ใŒๆ•ดๆ•ฐใชใ‚‰ใ€ๅฅ‡ๆ•ฐใช็ด„ๆ•ฐใจใ—ใฆๅฐ‘ใชใใจใ‚‚ $1,N^{1/6},N^{2/6},N^{3/6},N^{4/6},N^{5/6},N$ ใŒใ‚ใ‚‹ใ€‚ $N^{1/6}$ ใฏๅนณๆ–นๆ•ฐใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚
  • (ไธญ็•ฅ)
  • $N^{1/2}$ ใŒๆ•ดๆ•ฐใชใ‚‰ใ€ๅฅ‡ๆ•ฐใช็ด„ๆ•ฐใจใ—ใฆๅฐ‘ใชใใจใ‚‚ $1,N^{1/2},N$ ใŒใ‚ใ‚‹ใ€‚

ๆฌกใซ $min(N^{1/2}, 1009)$ ไปฅไธ‹ใฎ็ด„ๆ•ฐใ‚’ๆŽขใ™ใ€‚ใ“ใ‚Œใฏ $1..1009$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใ‹ใฉใ†ใ‹็ทๅฝ“ใŸใ‚Šใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ใ“ใฎๅพŒไธก่€…ใ‚’ใƒžใƒผใ‚ธใ—ใฆ้‡่ค‡ใ‚’ๆŽ’้™คใ™ใ‚‹ใจใ€ๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใฎๆ•ฐ $Q$ ใŒๅˆ†ใ‹ใ‚‹ใ€‚

ๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใฎๆ•ฐใฏไธŠ่จ˜ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ๅถๆ•ฐใฎ็ด„ๆ•ฐใฎๆ•ฐใฏๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใซ $2^{1..M}$ ใ‚’ๆŽ›ใ‘ใ‚‹ใฎใง $PQ$ ใงใ‚ใ‚‹ใ€‚็‰นใซ $M=0$ ใชใ‚‰ๅถๆ•ฐใฎ็ด„ๆ•ฐใฏ็„กใ„ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใจใฆใ‚‚็ฐกๆฝ”ใงใ‚ใ‚‹ใ€‚ๅถๆ•ฐใฎ็ด„ๆ•ฐใฎๆ–นใŒๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใ‚ˆใ‚Šๅคšใ„ใ‹ใฉใ†ใ‹ใ ใ‘็ญ”ใˆใ‚Œใฐใ‚ˆใ„ใฎใงใ€็ด„ๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚

  • NใŒ $2^2$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใชใ‚‰ๅถๆ•ฐใฎ็ด„ๆ•ฐใฎๆ–นใŒๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใ‚ˆใ‚Šๅคšใ„ใ€‚ๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใฎ2,4ๅ€ใฎไป–ใซ $2^i$ ใŒใ‚ใ‚‹ใฎใงใ€‚
  • NใŒ $2$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œ $2^2$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใชใ„ใชใ‚‰ๅถๆ•ฐใฎ็ด„ๆ•ฐใจๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใฏๅŒใ˜ๆ•ฐใงใ‚ใ‚‹ใ€‚ๅฅ‡ๆ•ฐใฎ็ด„ๆ•ฐใซ1ใŒใ‚ใ‚‹ใฎใงใ€‚

ๅฎŸ่ฃ…ใ™ใ‚‹ใจ ใ“ใกใ‚‰ ใ€‚ไธŠ่จ˜ใฎๅฎŸ่ฃ…ใŒใ„ใคใ‹ๅฝนใซ็ซ‹ใคใจใ„ใ„ใฎใ ใŒใ€‚

ARC 116-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

้ †ไธๅŒใชใฎใง $A$ ใฎ้™้ †ใซใ—ใฆใ‹ใ‚‰่€ƒใˆใ‚‹ใ€‚

้™้ †ใชใ‚‰ $A_1$ ใŒๅฟ…ใšๆœ€ๅคงๅ€คใซใชใ‚Šใ€ $[A_{1},A_{2}]$ ใชใ‚‰ $A_2$ ใŒๆœ€ๅฐๅ€ค, $[A_{1},...,A_{n}]$ ใชใ‚‰ $A_n$ ใŒๆœ€ๅฐๅ€คใซใชใ‚‹ใ€‚

ไธ€่ˆฌ็š„ใช $i$ ใซใคใ„ใฆใ€ $A_j : j < i$ ใ‚’ๅซใพใšใ€ $A_i$ ใ‚’ๅฟ…ใšๅซใฟใ€ $A_j : j > i$ ใ‚’ๅซใ‚€ใ‹ใฉใ†ใ‹ใฏไปปๆ„ใฎ้ƒจๅˆ†ๅˆ—ใซใคใ„ใฆใ€

  • ๆœ€ๅคงๅ€คใฏ $A_i$
  • ๆœ€ๅฐๅ€คใŒ $A_i$ ใซใชใ‚‹ใ‚ˆใ†ใช้ƒจๅˆ†ๅˆ—ใฏ $[A_i,A_i]$ ใฎไธ€้€šใ‚Š
  • ๆœ€ๅฐๅ€คใŒ $A_j$ ใซใชใ‚‹ใ‚ˆใ†ใช้ƒจๅˆ†ๅˆ—ใฏ $[A_i,...,A_j]$ ใฎ $...$ ใ‹ใ‚‰ไฝ•ใ‚’ๆŠœใใ‹ใชใฎใง $2^{j-i-1}$ ้€šใ‚Š

ใงใ‚ใ‚‹ใ€‚ๆœ€ๅˆใซ $i = 1$ ใจใ—ใฆใ€ $S = \sum_{i=2..N} 2^{i-2} A_i$ ใ‚’ๆฑ‚ใ‚ใฆใŠใใ€‚ใ“ใ“ใ‹ใ‚‰ $i+1$ ใฎใจใใฎๅ€คใ‚’ๆฑ‚ใ‚ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚

  • $A_i : i = 1..N$ ใซใคใ„ใฆใ€ $[A_i,A_i]$ ใฎไธ€้€šใ‚Šใซๅฏพๅฟœใ—ใฆใ€็ญ”ใˆใซ ${A_{i}}^2$ ใ‚’่ถณใ™
  • $A_i : i = 1..(N-1)$ ใซใคใ„ใฆใ€็ญ”ใˆใซ $A_i \times S$ ใ‚’่ถณใ™ใ€‚ $S$ ใ‹ใ‚‰ $A_{i+1}$ ใ‚’ๅผ•ใใ€ใใฎๅพŒ $S$ ใ‚’2ใงๅ‰ฒใ‚‹ใ“ใจใงใ€ $S$ ใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

ARC 116-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ด ๅ› ๆ•ฐๅˆ†่งฃใ‹ใจๆ€ใฃใŸใ‚‰็ด„ๆ•ฐๅˆ—ๆŒ™ใ ใฃใŸใ€‚

ใ‚ใ‚‹ๆ•ฐ $x$ ใ‚’1ไปฅๅค–ใฎ็ด„ๆ•ฐใฎ็ฉ $x = x_1 \times x_2 \times x_3$ ใจ่กจ็พใงใใ‚‹ใจใ™ใ‚‹ใ€‚็ฉใ‚’็ดฏ็ฉใ—ใฆใ€ $x_1, x_{1}x_{2}, x_{1}x_{2}x_{3}$ ใฏ $N \geq 3$ ใชใ‚‰ $A$ ใฎ่ฆ็ด ใซใงใใ‚‹ใ€‚ใ“ใฎ $A$ ใฎไธฆใณใฏ $(x_1, x_2, x_3)$ ใฎไธฆใณใจไธ€ๅฏพไธ€ใซๅฏพๅฟœใ™ใ‚‹ใ€‚ใ‚ˆใฃใฆ $(x_1, x_2, x_3)$ ใ‚’ไธฆในใฆ็ฉใŒ $x$ ใซใชใ‚‹ใƒ‘ใ‚นใฎๅ†…ใ€ใƒ‘ใ‚น้•ทใŒ $N$ ไปฅๅ†…ใฎใ‚‚ใฎใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ๆฑ‚ใ‚ใ‚‹ใ“ใจใจ็ญ‰ใ—ใ„ใ€‚

$i=1..M$ ใซใคใ„ใฆใพใจใ‚ใฆใƒ‘ใ‚น้•ทใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $i$ ใฎใƒ‘ใ‚นใฏ $i$ ใฎ1ใจ $i$ ไปฅๅค–ใฎ็ด„ๆ•ฐใฎ้›†ๅˆ $S$ ใซใคใ„ใฆๅ‹•็š„่จˆ็”ปๆณ•ใงๆฑ‚ใพใ‚‹ใ€‚

  • $DP[i][c]$ ใ‚’ใ€ๆŽ›ใ‘ใฆ $i$ ใซใชใ‚‹ใƒ‘ใ‚น้•ท $c$ ใซใชใ‚‹็ต„ใฟๅˆใ‚ใ›ใŒไฝ•้€šใ‚Šใ‹ใ‚’ๅฎš็พฉใ™ใ‚‹
  • $DP[1][1] = 1$ ใจใ™ใ‚‹
  • ไปฅไธ‹ใ‚’ $i=2..M$ ใซใคใ„ใฆ้ †ใซๆฑ‚ใ‚ใ‚‹ใ€‚็ด„ๆ•ฐใฎๆ•ฐใฏใใ‚Œใปใฉๅคšใใชใ„ใฎใงTLEใ—ใชใ„ใ€‚
    • $DP[i][1] = 1$ ใจใ™ใ‚‹
    • $i$ ใฏ $f \in S$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใฎใงใ€ $DP[i][c+1] = DP[f][c]$ ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใฏ $DP[f][c]$ ้€šใ‚Šใฎใƒ‘ใ‚นใซใ€ $i/f$ ใ‚’ๆŽ›ใ‘ใ‚‹ใจใ€ $DP[i][c+1]$ ้€šใ‚Šใฎใƒ‘ใ‚นใซใชใ‚‹ใ“ใจๆ„ๅ‘ณใ™ใ‚‹ใ€‚

ใ“ใ†ใ—ใฆๆฑ‚ใ‚ใŸใƒ‘ใ‚นใซ $1$ ใ‚’ๆŒŸใฟใ“ใ‚€ใ€‚ใƒ‘ใ‚น้•ทใ‚’ $c$ ใจใ™ใ‚‹ใ€‚

  • $c > N$ ใชใ‚‰็„ก่ฆ–ใ™ใ‚‹
  • ใใ†ใงใชใ‘ใ‚Œใฐ $N - c$ ๅ€‹ใฎ1ใ‚’ $A$ ใซๆŒŸใฟ่พผใ‚€ใ“ใจใŒใงใใ‚‹ใ€‚ใ“ใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $N \choose c$ ๅ€‹ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ $DP[][c]$ ใซๆŽ›ใ‘ใ‚‹ใ€‚
  • ใ“ใ‚Œใ‚‰ใฎๅ’ŒใŒๆฑ‚ใ‚ใ‚‹็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ใ“ใฎๆ–นๆณ•ใฏๅ…ฌๅผ่งฃ่ชฌ3ใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌ1ใฎๆ–นๆณ•ใ‚’ใชใ‚“ใจใชใๆ€ใ„ๆตฎใ‹ในใŸใŒ่งฃๆณ•ใซ่‡ณใ‚‰ใชใ‹ใฃใŸใ€‚

็ด ๅ› ๆ•ฐใ‚’ๆŽ›ใ‘ใ‚‹ๅ ดๆ‰€ใซๆณจ็›ฎใ™ใ‚‹ใ€ใจใ‚ใ‚‹ใŒใ€ใ“ใ‚Œใฏ็ด ๆ•ฐ $p,q$ ใซใคใ„ใฆ $x = p^a \times q^b$ ใฎใจใใ€ $p$ ใ‚’ๆŽ›ใ‘ใ‚‹ๅ ดๆ‰€ใฏ $N-1+a \choose a$ ้€šใ‚Šใ‚ใ‚‹ใ€ใจใ„ใ†ๆ„ๅ‘ณใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ใ™ในใฆใฎ $x$ ใฎใ™ในใฆใฎ็ด ๅ› ๆ•ฐใซใคใ„ใฆๆ•ฐใˆใ‚Œใฐใ„ใ„ใ€‚ๅฎŸ่ฃ…ใฏ ใ“ใกใ‚‰ ใ€‚็ด ๅ› ๆ•ฐใ‚’ๆŽ›ใ‘ใ‚‹้ †ๅˆ—ใซๆณจ็›ฎใ™ใ‚‹ใจใ€ $2 \times 3 = 6$ ใจ $3 \times 2 = 6$ ใฎๅŒบๅˆฅใŒใคใ‹ใชใ„ใ€‚

ARC 116-D

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆกDP

$A$ ใฎ $2^i$ ๆˆๅˆ†ใซๆณจ็›ฎใ™ใ‚‹ใ€‚ $\oplus A = 0$ ใชใฎใงใ€ $2^i$ ๆˆๅˆ†ใฏๅฟ…ใšๅถๆ•ฐๅ€‹ใงใ‚ใ‚‹ใ€‚ $DP[i=0..][j=0..M]$ ใ‚’ใ€ใƒ“ใƒƒใƒˆ $i=0..$ ใพใง่ฆ‹ใŸๆ™‚ใซใ€ๅ’ŒใŒ $j$ ใซใชใ‚‹ใฎใŒไฝ•้€šใ‚Šใ‹ใจๅฎš็พฉใ™ใ‚‹ใ€‚ๅ…ทไฝ“็š„ใซใฏไปฅไธ‹ใฎใ‚ˆใ†ใซใ™ใ‚‹ใ€‚

  • $DP[-1][]=0, DP[-1][0] = 1$ ใคใพใ‚Šๅ’ŒใŒ0ใซใชใ‚‹ใฎใฏ1้€šใ‚Š
  • $d = 2k \times 2^i$ ใฎใจใใ€ $DP[i][from+d] = DP[i-1][from+d] + DP[i][from] \times {N \choose d}$ ใคใพใ‚Š $DP[i][from]$ ใฎ็ต„ใฟๅˆใ‚ใ›ใ‹ใ‚‰ใ€ $N$ ไธญ $2k$ ใƒ“ใƒƒใƒˆ็ซ‹ใฆใ‚‹ๆ–นๆณ•ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ $0 \leq from+d \leq M$ ใ‚’ๆบ€ใŸใ™ๅ…จใฆใฎ $from, k$ ใซใคใ„ใฆๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

็ญ”ใˆใฏ $DP[\infty][M]$ ใงใ‚ใ‚‹ใ€‚ $M \leq 5000 < 2^{13}$ ใชใฎใงไธ‹ไฝใ‹ใ‚‰12ใƒ“ใƒƒใƒˆใฟใ‚Œใฐใ‚ˆใ„ใ€‚

ARC 117-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅˆถ็ด„ใŒ็ทฉใ„

$A,B \leq 1000$ ใง $|E| \leq 10^9$ ใชใฎใงใ€ $E$ ใ‚’็ตถๅฏพๅ€ค1ใ‹ใ‚‰้ †ใซๅ–ใ‚Œใฐๅˆถ็ด„ใ‚’ๆบ€ใŸใ—ใใ†ใงใ‚ใ‚‹ใ€‚ใจใ‚Šใ‚ใˆใš $A,B$ ใฏ1ใ‹ใ‚‰1ใšใคๅข—ใˆใ‚‹ๆญฃใฎๆ•ฐใจใ—ใฆ $\sum_{i=1}^n = n(n+1)/2$ ใ‚’่จˆ็ฎ—ใ—ใฆใ€ๅทฎ $d=abs(sum(A) - sum(B))$ ใ‚’ $sum(A)$ ใจ $sum(B)$ ใฎๅฐ‘ใชใ„ๆ–นใฎไธ€็•ชๅคงใใชๆ•ฐ( $A$ ใพใŸใฏ $B$ )ใซ่ถณใ™ใ€‚

ใ‚ใจใฏ $1..A$ ใจ $-(1..B)$ ใ‚’็ตถๅฏพๅ€ค1ใ‹ใ‚‰้ †ใซๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใŸใ ใ—ไธŠ่จ˜ใซๅŸบใฅใ„ใฆใ€ $A$ ใ‚’ $A+d$ ใซใ™ใ‚‹ใ‹ $B$ ใ‚’ $-(B+d)$ ใซใ™ใ‚‹ใ€‚

ARC 117-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ•ดๅœฐ

ๅŒใ˜้ซ˜ใ•ใฎใƒ“ใƒซใฏๅŒใ˜ๆŒ™ๅ‹•ใ‚’ใ™ใ‚‹ใฎใงใ€ใƒ“ใƒซใฎ้ซ˜ใ•ใ‚’้™้ †ใซใ—ใฆไธ€ๆ„ใซใ™ใ‚‹ใ€‚ใ“ใฎใจใๆœ€ๅพŒใซ0้šŽๅปบใฆใ‚’ๅ…ฅใ‚ŒใฆใŠใใจๅ‡ฆ็†ใŒๆฅฝใงใ‚ใ‚‹ใ€‚

ไธฆใณๆ›ฟใˆใŸๅพŒใฎใƒ“ใƒซใฎ้ซ˜ใ• $B_1,..,B_{M+1}=0$ ใซใคใ„ใฆใ€ ้ซ˜ใ•ใฎๅทฎ $D_1=B_1-B_2,D_2=B_2-B_3,...,D_M=B_M$ ใซใคใ„ใฆใ€ใใ‚Œใžใ‚Œใฎ้šŽๆ•ฐใฎๅทฎใซใคใ„ใฆใ€้šŽใ‚’ๆธ›ใ‚‰ใ™ใ‹ใฉใ†ใ‹ใฏ็‹ฌ็ซ‹ใงใ‚ใ‚‹ใ€‚ใใฎ็ต„ใฟๅˆใ‚ใ›ใฏใ€ $D_1+1,D_2+1,...,D_M+1$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใใ‚Œใžใ‚Œ1ๅข—ใ‚„ใ™ใฎใฏๆธ›ใ‚‰ใ•ใชใ„ๅ ดๅˆใงใ‚ใ‚‹ใ€‚ใ“ใฎ็ฉใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏๆ˜‡้ †ใงใ‚ใ‚‹ใ“ใจ(ๆœ€ๅˆใซ0้šŽๅปบใฆใ‚’ๅ…ฅใ‚Œใ‚‹)ใ€ๅŒใ˜้ซ˜ใ•ใฎใƒ“ใƒซใฏๅŒไธ€่ฆ–ใงใใ‚‹ใŒๅ›ณใซๆ›ธใ„ใฆใ‚ใ‚‹ใ“ใจใ‚’้™คใ‘ใฐใ€ไธŠ่จ˜ใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 117-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

$S$ ใฎๅ„ๆ–‡ๅญ—ใ‚’ๆ•ฐๅ€ค $B=0, W=1, R=2$ ใซๅฏพๅฟœใ•ใ›ใ‚‹ใ€‚ $mod 3$ ใงไปฅไธ‹ใŒๆˆใ‚Š็ซ‹ใคใ€‚1้šŽๅฑคใ‚’ๆ“ไฝœใ™ใ‚‹ใ”ใจใซใ€ไฝ™ใ‚Šใจ3ๅผ•ใไฝ™ใ‚ŠใŒๅ…ฅใ‚Œๆ›ฟใ‚ใ‚‹ใ€‚

  • $B + B = B$
  • $B + W = 3 - R$
  • $B + R = 3 - W$
  • $W + W = W$
  • $W + R = 3 - B$
  • $R + R = 3 - R$

$S[i=0..(N-1)]$ ใŒไธŠ่จ˜ใฎๅฏ็ฎ—ใซๅฏ„ไธŽใ™ใ‚‹ๅ›žๆ•ฐใฏ $(N-1) \choose i$ ใจใ‚ใ‹ใ‚‹ใ€‚ใ‚ˆใฃใฆ $r = \sum_{i=0}^{n-1} (S_i {(N-1) \choose i})$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $N$ ใŒๅฅ‡ๆ•ฐใชใ‚‰ $r$ ใ€ $N$ ใŒๅถๆ•ฐใชใ‚‰ $(3-r) mod 3$ ใซๅฏพๅฟœใ™ใ‚‹ๆ–‡ๅญ—ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ใ“ใ“ใพใงใฏใ‚ใ‹ใฃใŸใŒใ€mod 3ใฎๅ–ใ‚Šๆ–นใŒๅˆ†ใ‹ใ‚‰ใชใใฆ่ซฆใ‚ใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใซๆ–นๆณ•ใŒ่ผ‰ใฃใฆใ„ใ‚‹ใ€‚

ARC 118-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚„ใฃใฆใฟใ‚‹

$\lfloor 0..(100+t-1) \rfloor$ ใฎใ†ใก $0..(100+t-1)$ ใซๅ‡บ็พใ—ใชใ„ๆ•ฐใ‚’ๅฎŸ้š›ใซ่ชฟในใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใชๆ•ฐใŒ $R_0,...R_{M-1}$ ใฎ $M$ ๅ€‹ใ‚ใ‚Œใฐใ€ ็ญ”ใˆใฏ $\lfloor N/M \rfloor \times (100+t) + R_{N \quad mod \quad M}$ ใงใ‚ใ‚‹ใ€‚

ARC 118-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ–ใƒฌใ‚ผใƒณใƒใƒ ใฎใ‚ขใƒซใ‚ดใƒชใ‚บใƒ ใฃใฝใ„่ฒชๆฌฒๆณ•ใ‚’ๆ€ใ„ใคใ„ใŸใŒ่ฉฐใ‚ๅˆ‡ใ‚Œใชใ‹ใฃใŸใ€‚ๆฎ‹ๅทฎใŒๅฐใ•ใ„็‰ฉใ‹ใ‚‰ๅข—ใ‚„ใ›ใฐใ‚ˆใ‹ใฃใŸใฎใงใ‚ใ‚Šใ€ $A$ ใฎ้™้ †ใงใฏใชใ‹ใฃใŸใ€‚

ไบŒๅˆ†ๆŽข็ดขใซใ‚ˆใ‚‹ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰ ใ€‚่ฒชๆฌฒๆณ•ใ‚ˆใ‚Šๅดใฃใฆ็†่งฃใŒๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

่ฒชๆฌฒๆณ•ใฃใฝใๅฎŸ่ฃ…ใ—ใฆใ‚‚ ๆญฃ่งฃ ใ™ใ‚‹ใ€‚

  • $B$ ใฎๅˆๆœŸ่งฃใ‚’ไฝœใ‚‹ใ€‚ $B_i N = A_i M$ ใชใ‚‰ๆฎ‹ๅทฎ0ใชใฎใง $B_i = A_i M /N$ ใซใ—ใฆไปฅๅพŒไฝ•ใ‚‚ใ—ใชใ„ใ€‚ $b = \lfloor A_i M / N \rfloor$ ใจใŠใ„ใฆใ€ $b$ ใจ $b+1$ ใฎใ†ใกใ€ $|b N - A_i M|$ ใŒๅฐใ•ใ„ๆ–นใ‚’ $B_i$ ใฎๅˆๆœŸๅ€คใซใ™ใ‚‹ใ€‚ใ“ใฎๆ™‚็‚นใฎ $S = \sum B$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚
  • ๆฎ‹ๅทฎ $|B_i N - A_i M|$ ใฎ้™้ †ใซ $i$ ใ‚’ใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚ไปฅไธ‹ใ‚’2ใƒซใƒผใƒ—ๅ›žใ™ใ€‚
    • $S < M$ ใชใ‚‰ $B_i N < A_i M$ ใช $i$ ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰ $M - S$ ๅ€‹ใซใคใ„ใฆใ€ใใ‚Œใžใ‚Œ $B_i$ ใซ1ๅŠ ใˆใฆ $S$ ใ‚’1ๅŠ ใˆใ‚‹
    • $S > M$ ใชใ‚‰ $B_i N > A_i M$ ใช $i$ ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰ $S - M$ ๅ€‹ใซใคใ„ใฆใ€ใใ‚Œใžใ‚Œ $B_i$ ใ‹ใ‚‰1ๆธ›ใ‚‰ใ—ใฆ $S$ ใ‚’1ๆธ›ใ‚‰ใ™

ARC 118-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅถๅฅ‡ใซๅˆ†ใ‘ใ‚‹ใ€‚

$A$ ใฎไธ€ใคใ‚’ๅฅ‡ๆ•ฐ $M$ ใ€ไป–ใ‚’ๅถๆ•ฐใฎ้›†ๅˆ $S$ ใซใ™ใ‚‹ใ€‚ $M$ ใจ $S$ ใจใฏๅ…ฑ้€šใฎ็ด ๅ› ๆ•ฐใ‚’ๆŒใกใ€ $S$ ใฎ่ฆ็ด ๅŒๅฃซใฏ็ด ๅ› ๆ•ฐ $2$ ใ‚’ๆŒใกใ€ $A$ ๅ…จไฝ“ใฏๅ…ฑ้€šใฎ็ด ๅ› ๆ•ฐใ‚’ๆŒใŸใชใ„( $2$ ใ‚’ๆŒใฃใŸใ‚ŠๆŒใŸใชใ‹ใฃใŸใ‚Šใ™ใ‚‹ใ‹ใ‚‰)ใ‚ˆใ†ใซใ—ใŸใ„ใ€‚

$M = 3 \times 5 \times 7 \times 11 = 1155$ ใจใ—ใฆใ€ $S$ ใ‚’ๅถๆ•ฐใ‹ใค $3,5,7,11$ ใฎๅฐ‘ใชใใจใ‚‚ไธ€ใคใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ๆ•ฐใฎ้›†ๅˆใจใ™ใ‚‹ใ€‚ $A \leq 10000$ ใงใ“ใฎใ‚ˆใ†ใช $S$ ใ‚’2499ๅ€‹ไปฅไธŠ้›†ใ‚ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใ‚ˆใฃใฆ $M$ ใ‚’ๅฟ…ใš้ธใณใ€ไป–ใซ $S$ ใ‹ใ‚‰ $N-1$ ๅ€‹ไปปๆ„ใซ้ธใ‚“ใงๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ARC 119-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅˆถ็ด„ใŒๅฐใ•ใ„

$b$ ใŒ64้€šใ‚Šใ—ใ‹ใชใ„ใฎใ ใ‹ใ‚‰ใ€ๅ…จ้ƒจ่ฉฆใ›ใฐใ‚ˆใ„ใ€‚ $b=0,c=0$ ใชใ‚‰ $a=N$ ใชใฎใงใ€็ญ”ใˆใฏ $N$ ไปฅไธ‹ใงใ‚ใ‚‹ใ€‚ $b$ ใ‚’1ๅข—ใ‚„ใ™ใ”ใจใซใ€ $a$ ใ‚’ๅŠๅˆ†ใซใ—ใ€ $c$ ใ‚’1ๆกใšใคๅข—ใ‚„ใ›ใฐใ„ใ„(ใƒ“ใƒƒใƒˆใƒžใ‚นใ‚ฏใ‚’2ๅ€ใ—ใฆ1่ถณใ™)ใ€‚

ARC 119-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธ€็žฌใฎใฒใ‚‰ใ‚ใ

ๅˆ่ฆ‹ใงไธ€ๆ™‚้–“ไปฅไธŠใ‹ใ‘ใฆ่งฃใ‘ใšใ€ใใฎใพใพๆ•ฐๆ—ฅๅฏใ‹ใ›ใฆใ€ใ‚ใ‚‹ๆ—ฅ็ช็„ถใฒใ‚‰ใ‚ใใ€ๆ•ฐๅˆ†ใง่งฃใ‘ใŸใ€‚

ใ“ใฎๆ“ไฝœใฏ 0 ใจ 1 ใฎๆ•ฐใ‚’ๅค‰ใˆใชใ„ใฎใงใ€ $S$ ใจ $T$ ใง 0 ใฎๆ•ฐใŒ็•ฐใชใ‚Œใฐไธ€่‡ดใ•ใ›ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ใ“ใฎ็จฎใฎๆดžๅฏŸใฏARCใงใฏๅคšใ€…ๅ‡บใฆใใ‚‹ใ€‚ไปฅๅพŒ $S$ ใจ $T$ ใง 0 ใฎๆ•ฐใฏ็ญ‰ใ—ใ„ใ‚‚ใฎใจใ™ใ‚‹ใ€‚

$S$ ใจ $T$ ใง 0 ใฎไฝ็ฝฎใ‚’ไธ€่‡ดใ•ใ›ใ‚‹ใซใฏใ€ $S$ ใฎๅทฆใ‹ใ‚‰ $i$ ็•ช็›ฎใฎ 0 ใ‚’ $T$ ใฎ $i$ ็•ช็›ฎใฎ 0 ใจๅŒใ˜ไฝ็ฝฎใซใ™ใ‚‹ใ€‚ใ“ใฎๆ“ไฝœๅ›žๆ•ฐใฏใ€ไธก่€…ใฎๅ ดๆ‰€ใŒ็•ฐใชใ‚Œใฐ1ๅ›žใ€ใใ†ใงใชใ‘ใ‚Œใฐ0ๅ›žใงใ‚ใ‚‹ใ€‚ใคใพใ‚Šไฝ็ฝฎใŒไธไธ€่‡ดใช 0 ใฎๆ•ฐใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 119-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

10ๅˆ†ใง่งฃใ‘ใฆใ—ใพใฃใŸใ€‚

ไบคไปฃๅ’Œ $\sum_{i=l}^{r} A_i - A_{i+1} + A_{i+2} ...$ ใŒ0ใชใ‚‰่จˆ็”ปใ‚’้”ๆˆใงใใ‚‹ใ€‚้šฃใ‚Šๅˆใ†ใƒ“ใƒซใฎ้ซ˜ใ•ใ‚’ๅข—ใ‚„ใ—ใฆใ‚‚ๆธ›ใ‚‰ใ—ใฆใ‚‚ใใฎๅทฎใฏๅค‰ใ‚ใ‚‰ใชใ„ใฎใงใ€ไบคไปฃๅ’Œใฏไธๅค‰้‡ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆไบคไปฃๅ’ŒใŒ0ใซใชใ‚‹ๅŒบ้–“ใฎๆ•ฐใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

$A_0=0$ ใ‹ใ‚‰ $A_i$ ใพใงใฎใฎไบคไปฃๅ’Œ $C_i$ ใ‚’ๆฑ‚ใ‚ใฆใŠใ‘ใฐใ€ $C_i$ ใฎๅ€คใŒ็ญ‰ใ—ใ„็ต„ใ‚’ $l,r$ ใจ็ฝฎใใ“ใจใงไบคไปฃๅ’ŒใŒ0ใฎๅŒบ้–“ใ‚’ไฝœใ‚Œใ‚‹ใ€‚ใ“ใ‚Œใฏๅ€คใŒ $C_i$ ใจใชใ‚‹ $i$ ใฎ้›†ๅˆใŒ $S$ ๅ€‹ใ‚ใ‚‹ใจใ„ใ†ใƒ†ใƒผใƒ–ใƒซใ‚’ไฝœใ‚Œใฐใ€ใใฎ $C_i$ ใซใคใ„ใฆ $S(S-1)/S$ ็ต„ใงใ‚ใ‚‹ใ€‚

ARC 120-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ดฏ็ฉๆœ€ๅคงๅ€คใจไบŒ้‡็ดฏ็ฉๅ’Œ

$a$ ใฎ็ดฏ็ฉใ‚’ไปฅไธ‹ใฎ้€šใ‚Šๅ–ใ‚‹ใ€‚็ฉบ้›†ๅˆใฎ็ดฏ็ฉใจใ—ใฆใ€ๅ…ˆ้ ญใฏ0ใจใ—ใฆใŠใใ€‚

  • ็ดฏ็ฉๆœ€ๅคงๅ€ค $cummax(0..N)=(0,a_1,max(a_1, a_2),max(a_1, a_2,a_3),...)$
  • ็ดฏ็ฉๅ’Œ $(0,a_1,a_1+a_2,a_1+a_2+a_3,...)$ ใฏไบŒ้‡็ดฏ็ฉๅ’Œใ‚’ๅ–ใ‚‹ใฎใซไฝฟใˆใ‚‹
  • ไบŒ้‡็ดฏ็ฉๅ’Œ $cumsum(0..N)=(0,a_1,2a_1+a_2,3a_1+2a_2+a_3,...)$

$a=(A_1,..,A_k)$ ใซใคใ„ใฆใ€ $f_k(a)=cummax(k) \times k + cumsum(k)$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏไปฅไธ‹ใ‹ใ‚‰ๅˆ†ใ‹ใ‚‹ใ€‚

  • $A_1$ ใ‚’ $A_1+cummax(k)$ ใซใ™ใ‚‹
  • $A_2$ ใ‚’ ่จˆ็ฎ—ใ™ใ‚‹ๆ™‚็‚นใง $a$ ใฎๆœ€ๅคงๅ€คใฏ $A_1+cummax(k)$ ใชใฎใงใ€ $A_2$ ใ‚’ $A_2+A_1+cummax(k)$ ใซใ™ใ‚‹
  • $A_3$ ใ‚’ ่จˆ็ฎ—ใ™ใ‚‹ๆ™‚็‚นใง $a$ ใฎๆœ€ๅคงๅ€คใฏ $A_2+cummax(k)$ ใชใฎใงใ€ $A_3$ ใ‚’ $A_3+A_2+A_1+cummax(k)$ ใซใ™ใ‚‹
  • ไธ€้€ฃใฎๆ“ไฝœใŒ $A_k$ ใพใง็ต‚ใ‚ใฃใŸใ‚ใจ $a$ ใ‚’ๅˆ่จˆใ™ใ‚‹ใจใ€ $cummax(k)$ ใฏ $k$ ๅ›žใ€ $A_i$ ใฏ $i$ ๅ›ž่ถณใ™ใ“ใจใซใชใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ็ดฏ็ฉๆœ€ๅคงๅ€คใจไบŒ้‡็ดฏ็ฉๅ’Œใ‚’้€ๆฌก็š„ใซๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚

ARC 120-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ญ‰้ซ˜็ทš

$(1,1)$ ใ‹ใ‚‰ใฎใƒžใƒณใƒใƒƒใ‚ฟใƒณ่ท้›ข $d$ ใŒ็ญ‰ใ—ใ„ใƒžใ‚นใฎ้›†ๅˆใ‚’ $S_d$ ใจใ™ใ‚‹ใ€‚ใ™ในใฆใฎ $0 \leq d \leq (H + W - 2)$ ใซใคใ„ใฆใ€ $S_d$ ใซใ‚ใ‚‹ใƒžใ‚นใฎ่‰ฒใŒ็ญ‰ใ—ใ‘ใ‚Œใฐ้กŒๆ„ใ‚’ๆบ€ใŸใ™ใ€‚ใ‚ˆใฃใฆใใ‚Œใžใ‚Œใฎ $d$ ใซใคใ„ใฆ่ชฟในใ€ๅ–ใ‚Šใ†ใ‚‹็ต„ใฟๅˆใ‚ใ›ใฎ็ฉใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

  • ๅก—ใ‚‰ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒ็„กใ„ใชใ‚‰2้€šใ‚Š
  • ่ตคใๅก—ใ‚‰ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒ็„กใใ€้’ใๅก—ใ‚‰ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒ1ใคไปฅไธŠใ‚ใ‚Œใฐใ€ๅ…จ้ƒจ้’ใๅก—ใฃใฆ1้€šใ‚Š
  • ้’ใๅก—ใ‚‰ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒ็„กใใ€่ตคใๅก—ใ‚‰ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒ1ใคไปฅไธŠใ‚ใ‚Œใฐใ€ๅ…จ้ƒจ่ตคใๅก—ใฃใฆ1้€šใ‚Š
  • ไธŠ่จ˜ไปฅๅค–ใฏ่ตค้’ใŒๆททๅœจใ™ใ‚‹ใฎใง0้€šใ‚Š

ARC 120-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ‰‹ใ‚’ๅ‹•ใ‹ใ™ใ€‚

ๅ…ฅๅŠ›ไพ‹4ใ‚’ๅฎŸ้š›ใซๆ‰‹ใ‚’ๅ‹•ใ‹ใ—ใฆๆฑ‚ใ‚ใ‚‹ใ€‚ไปฅไธ‹ใฎใ‚ˆใ†ใซใ€ๅทฆ็ซฏใ‹ใ‚‰้ †ใซใ€ๆœ€ใ‚‚่ฟ‘ใ„ๅ€™่ฃœใ‚’็งปๅ‹•ใ•ใ›ใ‚‹ใจ7ๆ‰‹ใงๆฑ‚ใพใ‚‹ใ€‚

 8   5   4  <7   4   5
10<  7   4  <3   4   5 (+3)
10   5<  6   3   4  <5 (+1)
10   5   6   7<  2  <3 (+2)
10   5   6   7   4<  1 (+1)

ใ“ใฎๆ“ไฝœใ‚’ไธ€่ˆฌๅŒ–ใ™ใ‚‹ใจใ€ไปฅไธ‹ใŒๆˆใ‚Š็ซ‹ใคใ€‚ๅทฆใซ1็งปๅ‹•ใ™ใ‚‹ใจๅ€คใŒ1ๅข—ใˆใ‚‹ใ“ใจใ‚’ๅˆฉ็”จใ™ใ‚‹ใ€‚

  1. ใพใ ๅฎšไฝ็ฝฎใซใชใ„ใคใพใ‚Š $A_i \ne B_i$ ใ‚’ๆบ€ใŸใ™ๆœ€ๅฐใฎ $i$ ใ‚’ๆฑ‚ใ‚ใ‚‹
  2. $B_i = A_j + j - i$ ใชใ‚‹ๆœ€ๅฐใฎ $j$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใชใ‘ใ‚Œใฐๆ‰‹่ฉฐใพใ‚Šใชใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ—ใฆ็ต‚ใ‚ใ‚‹ใ€‚
  3. $A_j$ ใ‚’ $B_i$ ใซ็งปๅ‹•ใ™ใ‚‹
  4. $A_{i}..A_{j-1}$ ใ‹ใ‚‰1ๅผ•ใ„ใฆใ€ $A_{i}..A_{j}$ ใซใ‚ทใƒ•ใƒˆใ™ใ‚‹

ใ“ใ‚Œใ‚’ๆ˜Ž็คบ็š„ใซ่กŒใ†ใจTLEใ™ใ‚‹ใฎใงใ€้ซ˜้€ŸๅŒ–ใ‚’่ฉฆใฟใ‚‹ใ€‚ไฝ็ฝฎใŒ1ใ‚ทใƒ•ใƒˆใ™ใ‚‹ใฎใจๅ€คใŒ1ๆธ›ใ‚‹ใฎใ‚’่ถณใ™ใจ0ใซใชใ‚‹ใฎใŒ้ตใงใ‚ใ‚‹ใ€‚

  1. ้€ฃๆƒณ้…ๅˆ—ใซ $P$ ใ€ $P[A_i + i]$ ใฎๅ€คใ‚’ $i$ ใฎ้›†ๅˆใจใ—ใฆ็™ป้Œฒใ™ใ‚‹
  2. ้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจ $T$ ใซใ€ $A_i$ ใฎ็พๅœจๅœฐใ‚’ $T[A_i] = i$ ใ—ใฆ็™ป้Œฒใ™ใ‚‹
  3. $i = 1..N$ ใซใคใ„ใฆไปฅไธ‹ใ‚’้ †ใซ่ชฟในใ‚‹
  • ้€ฃๆƒณ้…ๅˆ—ใซ $B_i + i$ ใŒ่ผ‰ใฃใฆใ„ใชใ‘ใ‚Œใฐๆ‰‹่ฉฐใพใ‚Š
  • ่ผ‰ใฃใฆใ„ใ‚‹ใชใ‚‰ใฐ็งปๅ‹•ๅ…ƒใจใ—ใฆๆœ€ๅฐๅ€ค $p = min(P[A_i + i])$ ใ‚’ๅพ—ใ‚‹ใ€‚
  • ็งปๅ‹•ๅ…ƒใฎ็พๅœจๅœฐ $q = T[p]$ ใ‚’ๅพ—ใ‚‹
  • ็งปๅ‹•ใ™ใ‚‹่ท้›ขใฏ $q - i$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’็ญ”ใˆใซ่ถณใ™
  • ้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใฎๅŒบ้–“ $[1,p)$ ใซ1่ถณใ—ใฆใ€็งปๅ‹•ๅ…ƒใ‚’ใ‚ทใƒ•ใƒˆใ™ใ‚‹ใ€‚
  • $P[A_i + i]$ ใ‹ใ‚‰ $p$ ใ‚’ๅ‰Š้™คใ™ใ‚‹

้€”ไธญใงๆ‰‹่ฉฐใพใ‚Šใซใชใ‚‰ใชใ‘ใ‚Œใฐใ€็งปๅ‹•่ท้›ขใฎๅ’ŒใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ่ปขๅ€’ๆ•ฐใ‚’ไฝฟใฃใฆใ„ใ‚‹ใ€‚

ARC 121-130

ARC 121-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไบŒๆ™‚้–“ๆŽ›ใ‹ใฃใŸ

ๆ–น้‡ใฏใ™ใ็ซ‹ใคใŒใ€ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใฎไฝœใ‚Š่พผใฟใŒๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

ๅฎถใฎๅบงๆจ™ $X,Y$ ใจใ€ใ‚ใ‚‹ $X,Y$ ๅบงๆจ™ใซใ‚ใ‚‹ๅฎถใฎ่ญ˜ๅˆฅๅญ $1..N$ ใ‚’ๆฑ‚ใ‚ใ‚‹

ๅฎŸ้š›ใซ1็•ช็›ฎใฎ่ท้›ขใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $max(X)-min(X) &lt; max(Y)-min(Y)$ ใคใพใ‚Š $Y$ ๆ–นๅ‘ใซ้•ทใ„ใจใ™ใ‚‹(ใใ†ใงใชใ‘ใ‚Œใฐ $X,Y$ ใ‚’ๅ่ปขใ—ใฆๅŒๆง˜ใซ่€ƒใˆใ‚‹ใ€‚

  • $max(Y)$ ใ‚‚ใ—ใใฏ $min(Y)$ ใฎๅฐ‘ใชใใจใ‚‚ไธ€ๆ–นใซใคใ„ใฆใ€ๅบงๆจ™ใŒไธ€่‡ดใ™ใ‚‹ๅฎถใŒ่ค‡ๆ•ฐใ‚ใ‚‹ใชใ‚‰ใ€1็•ช็›ฎใฎ่ท้›ขใจ2็•ช็›ฎใฎ่ท้›ขใฏๅŒใ˜ใงใ‚ใ‚‹ใ€‚
  • ใใ†ใงใชใ‘ใ‚Œใฐ $max(Y)$ ใ‚‚ใ—ใใฏ $min(Y)$ ใจใชใ‚‹ๅฎถใฏใใ‚Œใžใ‚Œไธ€ใคใ—ใ‹ใชใ„ใฎใ ใ‹ใ‚‰ใ€ใใ‚Œใžใ‚Œใ‚’ๅ–ใ‚Š้™คใ„ใฆ2้€šใ‚Šใซใคใ„ใฆใ€1็•ช็›ฎใฎ่ท้›ขใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

$max(X)-min(X) = max(Y)-min(Y)$ ใชใ‚‰ใ€

  • $max(X)$, $min(X)$, $max(Y)$, $min(Y)$ ใฎๅฐ‘ใชใใจใ‚‚ไธ€ๆ–นใซใคใ„ใฆใ€ๅบงๆจ™ใŒไธ€่‡ดใ™ใ‚‹ๅฎถใŒ่ค‡ๆ•ฐใ‚ใ‚‹ใชใ‚‰ใ€1็•ช็›ฎใฎ่ท้›ขใจ2็•ช็›ฎใฎ่ท้›ขใฏๅŒใ˜ใงใ‚ใ‚‹ใ€‚
  • ใใ†ใงใชใ‘ใ‚Œใฐ $max(X)$, $min(X)$, $max(Y)$, $min(Y)$ ใจใชใ‚‹ๅฎถใฏใใ‚Œใžใ‚Œไธ€ใคใ—ใ‹ใชใ„ใฎใ ใ‹ใ‚‰ใ€ใใ‚Œใžใ‚Œใ‚’ๅ–ใ‚Š้™คใ„ใฆ4้€šใ‚Šใซใคใ„ใฆใ€1็•ช็›ฎใฎ่ท้›ขใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

2็•ช็›ฎใฎ่ท้›ขใ‚’ๆ˜Žใซๆฑ‚ใ‚ใ‚ˆใ†ใจใ™ใ‚‹ใจใƒ‡ใƒใƒƒใ‚ฐใŒๅคงๅค‰ใชใฎใงใ€1่ป’้™คใ„ใฆไธ€็•ช้•ทใ„่ท้›ขใ‚’ๆฑ‚ใ‚ใ‚‹ๆ–นใŒ็ฐกๅ˜ใงใ‚ใ‚‹ใ€‚ใ“ใ“ใงๆ™‚้–“ใ‚’ไฝฟใฃใฆใ—ใพใฃใŸใ€‚Xๅญ—ใจ/ๅญ—ใซใคใ„ใฆ่€ƒใˆใ‚‹ใ€ใชใฉใจๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹ใจไธŠๆ‰‹ใใ„ใ‹ใชใ„ใ€‚

ๆƒณๅฎš่งฃๆณ•ใฏใ€ $max(X),min(X)$ ใจ $max(Y),min(Y)$ ใ‚’็ทๅฝ“ใŸใ‚Šใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏๆ€ใ„ใคใ‹ใชใ‹ใฃใŸใ€‚ๅฎŸ่ฃ…ใ—ใŸใ‚‚ใฎใŒ ใ“ใกใ‚‰ ใงใ‚ใ‚‹ใ€‚

  • $X,Y$ ใฎ่พžๆ›ธ้ †ใฎๆ˜‡้ †ใงไธฆใณๆ›ฟใˆใฆใ€ ๆœ€ๅˆใฎX, ไบŒ็•ช็›ฎใซๅฐใ•ใ„X, ไบŒ็•ช็›ฎใซๅคงใใ„X, ๆœ€ๅคงใฎXใจใชใ‚‹ใ‚ˆใ†ใชๅฎถใ‚’ๆŒ™ใ’ใ‚‹ใ€‚่พžๆ›ธ้ †ใชใฎใงใ€XใŒ็ญ‰ใ—ใ‘ใ‚ŒใฐYใฎๆ˜‡้ †ใซใชใ‚‹ใ€‚ใคใพใ‚Šใ™ในใฆXใŒๅŒใ˜ใชใ‚‰ใ€ๆœ€ๅˆใฎY, ไบŒ็•ช็›ฎใซๅฐใ•ใ„Y, ไบŒ็•ช็›ฎใซๅคงใใ„Y, ๆœ€ๅคงใฎYใจใชใ‚‹ใ€‚
  • $Y,Y$ ใ‚‚ๅŒๆง˜ใ€‚
  • ไธŠ่จ˜ใ‹ใ‚‰ๆœ€ๅคง8่ป’ใ€ $X,Y$ ใงๆŒ™ใ’ใŸๅฎถใซ้‡่ค‡ใŒใ‚ใ‚‹ใจใใจ $N=3$ ใฎใจใใฏๅฐ‘ใชใ„ใฎใงๆœ€ๅฐ3ไปถๆŒ™ใŒใ‚‹ใ€‚้‡่ค‡ใ‚’ๆŽ’้™คใ—ใฆใ€ใใ‚Œใžใ‚Œใฎๅฎถใฎ่ท้›ขใ‚’็ทๅฝ“ใŸใ‚Šใงๆฑ‚ใ‚ใ€ไบŒ็•ช็›ฎใซๅคงใใ„่ท้›ขใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ๅฐ‘ใชใใจใ‚‚3่ป’ใ‚ใ‚‹ใฎใงใ€ไบŒ็•ช็›ฎใซๅคงใใ„่ท้›ขใฏๅฟ…ใšใ‚ใ‚Šใ€ใƒ€ใƒŸใƒผใฎ0ใ‚’่ฟฝๅŠ ใ™ใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚

ARC 121-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธ€ๆ™‚้–“ๅŠๆŽ›ใ‹ใฃใŸ

่‰ฒใŒR,G,Bใฎ็ŠฌใŒใใ‚Œใžใ‚Œๅถๆ•ฐๅŒนใ„ใ‚‹ใชใ‚‰็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใ€‚ไปฅๅพŒใฏๅฅ‡ๆ•ฐๅŒนใŒ2่‰ฒใ€ๅถๆ•ฐๅŒนใŒ1่‰ฒใจใ™ใ‚‹ใ€‚ไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใšใ€ R,GใŒๅฅ‡ๆ•ฐๅŒนใ€BใŒๅถๆ•ฐๅŒนใ€ๅŒนๆ•ฐ $|R| &lt; |G|$ ใจใ™ใ‚‹ใ€‚็Šฌใฎ้›†ๅˆใ‚’ std::set<std::pair<Num,Num>> ใ€ $a$ ใจ $i$ ใฎ็ต„ใง็ฎก็†ใ—ใฆ $a$ ใงใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚

ใพใšR,Gใฎ็ซฏๆ•ฐ1ๅŒนๅŒๅฃซใ‚’็ต„ใฟๅˆใ‚ใ›ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ“ใ‚Œใฏ $R$ ใฎใ™ในใฆใฎ $a$ ใซใคใ„ใฆใ€ใ‚‚ใฃใจใ‚‚่ฟ‘ใ„ $G$ ใจ็ต„ใฟๅˆใ‚ใ›ใ‚Œใฐใ„ใ„ใ€‚ std::set::lower_bound ใงๅˆ†ใ‹ใ‚‹ใ€‚ ๅทฎใŒ0ใชใ‚‰ๅณๅบงใซ็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใจๅˆ†ใ‹ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚BใŒ0ๅŒนใชใ‚‰ใ“ใ‚Œใง็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚

ๆฌกใซBใจ็ต„ใฟๅˆใ‚ใ›ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚R-Gใ‚ˆใ‚Šใ€R-B, G-Bใฎๆ–นใŒๅทฎใŒๅฐใ•ใ„ใ“ใจใŒใ‚ใ‚‹ใฎใงใ€่ฒชๆฌฒๆณ•ใงใฏไธŠๆ‰‹ใใ„ใ‹ใš็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹(ใ“ใ‚ŒใŒๅˆ†ใ‹ใ‚‰ใชใใฆๆ™‚้–“ใ‚’ๆบถใ‹ใ—ใŸ)ใ€‚RใพใŸGใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ๆœ€ใ‚‚่ฟ‘ใ„Bใจใฎๅทฎใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚R-Bใฎๆœ€ๅฐๅ€คใซG-Bใฎๆœ€ๅฐๅ€คใ‚’่ถณใ›ใฐใ‚ˆใ„ใŒใ€ใ“ใฎใจใๅŒใ˜Bใ‚’ๅ–ใ‚Šใ‚ใ„ใซใชใ‚‰ใชใ„ใ‚ˆใ†ใซๆณจๆ„ใ™ใ‚‹(ใใฎใŸใ‚ใซ้›†ๅˆใซ $i$ ใ‚’ๅ…ฅใ‚ŒใŸ)ใ€‚ๅŒๆง˜ใซG-Bใฎๆœ€ๅฐๅ€คใซR-Bใฎๆœ€ๅฐๅ€คใ‚’่ถณใ›ใฐใ‚ˆใ„ใ€‚

ใ“ใ‚Œใ‚‰ใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 122-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—

$N=1$ ใชใ‚‰ $A_1$ , $N=2$ ใชใ‚‰ $2A_1$ ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ $N &gt; 2$ ใจใ™ใ‚‹ใ€‚

$A_i$ ใจ $A_{i+1}$ ใฎ้–“ใซๆผ”็ฎ—ๅญ $OP_{i}$ ใซ + ใจ - ใ‚’ๅ…ฅใ‚Œใ‚‹็ต„ใฟๅˆใ‚ใ›ใซใคใ„ใฆๆผธๅŒ–ๅผใ‚’ไฝœใ‚‹ใ€‚ๅ…ˆ้ ญใ‹ใ‚‰้ †ใซใฟใฆใ€ $OP_{i}$ ใซ + ใ‚’็ฝฎใ‘ใ‚‹็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใ‚’ $P_i$ ใจใ—ใ€ - ใ‚’็ฝฎใ‘ใ‚‹็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใ‚’ $N_i$ ใจใ™ใ‚‹ใ€‚

  • ๅ…ˆ้ ญ $A_1$ ใฎๅ‰ใซใฏๆš—้ป™ใฎ $OP_0$ + ใŒใ‚ใ‚‹ใ€‚ใคใพใ‚Š $P_0=1$ , $N_0=0$ ใงใ‚ใ‚‹ใ€‚
  • - ใฎๅ‰ใฏ + ใ—ใ‹็ฝฎใ‘ใชใ„ใ€‚ใชใฎใง $N_i=P{i-1}$ , $P_i=P{i-1}+N_{i-1}$ ใงใ‚ใ‚‹ใ€‚
  • ใ“ใ‚Œใฏใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—ใงใ‚ใ‚Šใ€ $fib(0)=0, fib(1)=1, fib(i+2)=fib(i+1)+fib(i)$ ใจใ—ใฆใ€ $P_i=fib(i+1)$ , $N_i=fib(i)$ ใงใ‚ใ‚‹ใ€‚
  • ่‰ฏใ„ๅผใฎ็ทๆ•ฐใฏ $fib(N+1)$ ใงใ‚ใ‚‹ใ€‚

$OP_i$ ใŒ + ใงใ‚ใ‚‹ๅซใ‚€่‰ฏใ„ๅผใฎๆ•ฐใ‚’่€ƒใˆใ‚‹ใ€‚ใ“ใ‚Œใฏ $i$ ใ‚’ๅ‡บ็™บ็‚นใจใ—ใฆ $fib(N+1-i)$ ้€šใ‚Šใ‚ใ‚‹ใฎใงใ€ $P_i \times fib(N+1-i)$ ใคใพใ‚Š $Q_i=fib(i+1)fib(N+1-i)$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ $OP_i$ ใŒ - ใงใ‚ใ‚‹ๅซใ‚€่‰ฏใ„ๅผใฎๆ•ฐใฏใ€ $fib(N+1)-Q_i$ ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆๆฑ‚ใ‚ใ‚‹็ญ”ใˆใฏ $\sum_{i=1}^{N} A_i(2fib(i+1)fib(N+1-i) - fib(N+1))$ ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—ใงใ‚ใ‚‹ใ“ใจใ‚’ๆ˜Ž่จ€ใ—ใฆใ„ใชใ„ใŒใ€DPใ‚’ไฝฟใฃใŸ่งฃใๆ–นใฏๅŒใ˜ใ€‚

ARC 122-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่Œถdiffใงไธ‰ๅˆ†ๆŽข็ดข

ไธ‰ๅˆ†ๆŽข็ดขใ‚’ใ™ใ‚Œใฐๆฑ‚ใพใ‚‹ใ€‚

ARC 122-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅˆถ็ด„ใ‹ใ‚‰ใƒ“ใƒƒใƒˆใ”ใจใฎๆกDPใ‹ใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—ใ—ใ‹ใชใ„ใจๆ€ใ„ใ€ๆกDPใฏไธŠๆ‰‹ใใ„ใ‹ใชใ„ใฎใงใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—ใซใ—ใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏใƒ•ใ‚ฃใƒœใƒŠใƒƒใƒๆ•ฐๅˆ—ใ‚’ไฝฟใฃใŸ่งฃๆณ•ใŒๅŽณๅฏ†ใซๆ›ธใ„ใฆใ‚ใ‚‹ใŒใ€็งใฏ้ป„้‡‘ๅˆ†ๅ‰ฒใง้›‘ใซๅฎŸ่ฃ…ใ—ใฆACใ—ใŸใ€‚

้ป„้‡‘ๆฏ”ใ‚’ $r = (1 + \sqrt{5}) / 2) = 0.618$ ใจใ™ใ‚‹ใ€‚ $N$ ใ‚’ๅ†ๅธฐ็š„ใซ้ป„้‡‘ๆฏ”ใงๅˆ†ๅ‰ฒใ—ใ€่ชคๅทฎใ‚’ใ„ใ„ๆ„Ÿใ˜ใซๆ‰ฑใ†ใจACใ™ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใชๅฎŸ่ฃ…ใซใ—ใŸใŒใ€ๅ…ฌๅผ่งฃ่ชฌใจใฏ้•ใฃใฆๅŽณๅฏ†ใงใฏใชใ„ใ€‚

  • ๅˆๆœŸๅ€คใฏใ€ $x = N(1-r), y=Nr$ ใซใ™ใ‚‹ใ€‚ $10^{18}r$ ใฎไธธใ‚่ชคๅทฎใ‚’่€ƒๆ…ฎใ—ใฆใ€ๅ‰ๅพŒ30ใใ‚‰ใ„ๆŒฏใฃใฆใ€ๅˆถ็ด„ใ‚’ๆบ€ใŸใ™่งฃใ‚’้ธใถใ€‚ใ“ใฎๅ‡ฆ็†ใ‚’ๅฎŸ่ฃ…ใ—้–“้•ใˆใ€ไธ€ใค่ฆ‹ใคใ‘ใŸใ‚‰ๆ“ไฝœใŒๅคšใ™ใŽใ‚‹่งฃใ‚’่ฟ”ใ—ใฆใ—ใพใฃใฆใ„ใŸใ€‚
  • $x &lt; y$ ใจใ—ใฆ $(x,y)$ ใ‚’ $(x,y-x)$ ใซๅˆ†ๅ‰ฒใ™ใ‚‹ใ€‚ใใ†ใ™ใ‚‹ใจๆ“ไฝœ4ใ‚’้ฉ็”จใงใใ‚‹ใ€‚ $x &gt; y$ ใชใ‚‰ $x,y$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ€ๆ“ไฝœ3ใ‚’้ฉ็”จใ™ใ‚‹ใ€‚ใ“ใ“ใ‚’่จผๆ˜Ž็„กใ—ใงไฝฟใฃใŸ(็ขบใ‹ใซไธŠๆ‰‹ใใ„ใใŒใ€ๆ“ไฝœๅ›žๆ•ฐใฎไธŠ้™ใ‚’ๆบ€ใŸใ™ใ‹ใฉใ†ใ‹ๆ˜Žใ‚‰ใ‹ใงใฏใชใ„)ใ€‚
  • $(x,y-x)$ ใŒ่งฃ็„กใ—ใชใ‚‰ใ€ $(x,y-x-1)$ ใ‚’ๆŽขใ—ใ€ไธŠๆ‰‹ใใ„ใฃใŸใ‚‰ๆ“ไฝœ4,2ใ‚’้ฉ็”จใ™ใ‚‹ใ€‚ $x &gt; y$ ใชใ‚‰ $x,y$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ€ๆ“ไฝœ3,1ใ‚’้ฉ็”จใ™ใ‚‹
  • $x &lt; y-x$ ใคใพใ‚Š $2x &lt; y$ ใชใ‚‰ใ€ๆ“ไฝœ2ใ‚’้ฉ็”จใ™ใ‚‹ใ€‚ $x &gt; y$ ใชใ‚‰ๆ“ไฝœ1ใ‚’้ฉ็”จใ™ใ‚‹ใ€‚

ARC 123-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ ดๅˆๅˆ†ใ‘ใ‚’ๆธ›ใ‚‰ใ™ใ€‚

$A &lt; C$ ใจใ—ใฆไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใชใ„(ใใ†ใงใชใ‘ใ‚Œใฐ $A$ ใจ $C$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚Œใฐๅทฆๅณๅ่ปขใ™ใ‚‹)ใ€‚ใ‚ใจใฏ $B$ ใฎๅคงๅฐใงไบŒ้€šใ‚Šใซๅ ดๅˆๅˆ†ใ‘ใงใใ‚‹ใ€‚

  1. $A &lt; B$ ใ‹ใค $A + 2(B - A) \leq C$ ใชใ‚‰ใ€ $C$ ใ‚’ $A - B$ ใ‚’ๅปถ้•ทใ—ใŸๅ…ˆใพใงๅข—ใ‚„ใ™
  2. ใใ†ใงใชใ‘ใ‚Œใฐ $B$ ใ‚’ $A-C$ ใฎไธญ้–“็‚นใพใงๅข—ใ‚„ใ™ใ€‚ไธญ้–“็‚นใŒๆ•ดๆ•ฐใงใชใ‘ใ‚Œใฐๅˆ‡ใ‚ŠไธŠใ’ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏๆฌกๅ…ƒๅ‰Šๆธ›ใ‚’ใ—ใฆใ€็ญ‰ๅทฎๆ•ฐๅˆ—ใ‚’ไฝœใ‚‹ใŸใ‚ใฎ็‰นๅพด้‡ใ‚’ๅค‰ๆ›ดใ™ใ‚‹ๅ›žๆ•ฐใ‚’ๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚ใ“ใฎๆ–นใŒ่จผๆ˜Žใ—ใ‚„ใ™ใ„ใ€‚

ARC 123-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฐบๅ–ใ‚Šๆณ•

ๅ˜ใซๅฐบๅ–ใ‚Šๆณ•ใ™ใ‚Œใฐใ„ใ„ใฎใ ใŒใ€่งฃใใฎใซ54ๅˆ†ๆŽ›ใ‹ใฃใŸใ€‚ไบŒ้ƒจใ‚ฐใƒฉใƒ•ใฎๆœ€ๅคงใƒ•ใƒญใƒผๅ•้กŒใจใ—ใฆ่งฃใ“ใ†ใจๆ€ใฃใŸใฎใ ใŒใ€่พบใŒ $O(N^2)$ ใชใฎใง่งฃใ‘ใชใ„ใ€‚

  • $A,B,C$ ใ‚’ใใ‚Œใžใ‚Œๆ˜‡้ †ใซไธฆใณๆ›ฟใˆใ‚‹
  • $ia=1,ib=1,ic=1$ ใซใคใ„ใฆใ€ $A_{ia} &lt; B_{ib} &lt; C_{ic}$ ใชใ‚‰็ต„ใฟๅˆใ‚ใ›ใ‚’1ๅข—ใ‚„ใ™ใ€‚ใใฎใ‚ใจ $ia,ib,ic$ ใ‚’1ใšใคๅข—ใ‚„ใ—ใฆๅ†ๅบฆ่ฉฆใ™ใ€‚
  • $A_{ia} &lt; B_{ib}$ ใซใชใ‚‹ใพใง $ib$ ใ‚’ๅข—ใ‚„ใ™
  • $B_{ib} &lt; C_{ic}$ ใซใชใ‚‹ใพใง $ic$ ใ‚’ๅข—ใ‚„ใ™
  • ไธŠ่จ˜ใ‚’ $ia,ib,ic &lt; N$ ใฎ้–“็นฐใ‚Š่ฟ”ใ™

ARC 124-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅˆถ็ด„ใŒๅฐใ•ใ„ใ€‚

$N=1000$ ใชใฎใง $N^2$ ่งฃๆณ•ใŒ้€šใ‚Šใใ†ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $i=1..K$ ใซใคใ„ใฆใ€ไฝ็ฝฎ $1..N$ ใซใ‚ซใƒผใƒ‰ $i$ ใ‚’็ฝฎใใ“ใจใŒใงใใ‚‹ใ‹ใฉใ†ใ‹ๅฐใ‚’ใคใ‘ใฆใ‚ˆใ„ใ€‚ๅฎŸ้š›ใซใฏไฝ็ฝฎ $1..N$ ใซ็ฝฎใใ“ใจใŒใงใใ‚‹ใ‚ซใƒผใƒ‰ใŒไฝ•็จฎ้กžใ‚ใ‚‹ใ‹ๆ•ฐใˆใ‚Œใฐใ‚ˆใใ€ใฉใฎใ‚ซใƒผใƒ‰ใชใฎใ‹่ฆšใˆใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚

ๅˆถ็ด„ใ‚’ๆบ€ใŸใ™ใจใ„ใ†ใ“ใจใฏใ€ไฝ็ฝฎ $k_i$ ใซใ‚ซใƒผใƒ‰ $i$ ใ‚’ๅฟ…ใš็ฝฎใใ“ใจใ‚’ๆ„ๅ‘ณใ™ใ‚‹ใ€‚ใชใฎใง $i$ ใŒๆ›ธใ‹ใ‚ŒใŸใ‚ซใƒผใƒ‰ใŒๅฐ‘ใชใใจใ‚‚1ใคๅญ˜ๅœจใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใ€ใจใ„ใ†ๆกไปถใฏ่‡ชๅ‹•็š„ใซๆบ€ใŸใ™ใ€‚

ไฝ็ฝฎ $1..N$ ใซใคใ„ใฆใ€ใ‚ใ‚‹ใ‚ซใƒผใƒ‰ใ‚’ๅฟ…ใš็ฝฎใใชใ‚‰1้€šใ‚Šใ€ใใ†ใงใชใ‘ใ‚Œใฐ็ฝฎใ‘ใ‚‹ใ‚ซใƒผใƒ‰ใฎ็จฎ้กž้€šใ‚Šใงใ‚ใ‚Šใ€ใ“ใฎ็ฉใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 124-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

้€ฃๆƒณ้…ๅˆ—ใ‚’ๆฏ”่ผƒใ™ใ‚‹

$x=XOR(A_1,B_i)$ ใฎใจใใ€ $A_1=XOR(x,B_i)$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ๅˆฉ็”จใ—ใฆ $B_{1..N}=XOR(x,A_{1..N})$ ใ‹ใฉใ†ใ‹่ชฟในใ‚Œใฐใ€ $A_1$ ใซใคใ„ใฆ $x$ ใŒใ‚ˆใ„ๆ•ฐใ‹ใฉใ†ใ‹ๅˆ†ใ‹ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ $i=1..N$ ใซใคใ„ใฆ่ชฟในใ‚‹ใ€‚

$XOR(x,A_{1..N})$ ใจ $B_{1..N}$ ใซใคใ„ใฆใ€ใใ‚Œใžใ‚Œใฎๆ•ฐใฎๅ‡บ็พๅ›žๆ•ฐใ‚’ std::map ใซๅŽใ‚ใฆ == ใงๆฏ”่ผƒใ™ใ‚‹ใ€‚ใใ†ใ—ใชใ„ใจTLEใ™ใ‚‹ใ€‚

ARC 124-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚ใจ1 WAใ ใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ $GCD(A,B) \leq A,B$ ใชใฎใงใ€ๆœ€ๅˆใฎ่ฆ็ด ใฎ็ด„ๆ•ฐใจๆฑบใ‚ๆ‰“ใกใ—ใฆใ‚ˆใ‹ใฃใŸใ€‚ใ™ในใฆใฎ่ฆ็ด ใฎ็ด„ๆ•ฐ $f$ ใ‚’ๅˆ—ๆŒ™ใ—ใฆใ€ $f$ ใŒ $A_{1..N}$ ใพใŸใฏ $B_{1..N}$ ใฎ็ด„ๆ•ฐใซใชใ‚‹ใฎใŒ $N$ ้€šใ‚Šใชใ‚‰ๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใฎๅ€™่ฃœใซใ™ใ‚‹ใ€ใจใ„ใ†ๆ–นๆณ•ใ‚’ๅฎŸ่ฃ…ใ—ใŸใ‚‰1 WAใ ใ‘ๆฎ‹ใฃใŸใ€‚

ARC 125-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅๅพฉๆจช่ทณใณ

$M$ ใฎ่ฆ็ด ใŒ $N$ ใซใชใ‘ใ‚Œใฐ่งฃใชใ— -1 ใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใใฆ $N$ ใฎ่ฆ็ด ใŒใ™ในใฆๅŒใ˜ใชใ‚‰ใ‚ทใƒ•ใƒˆไธ่ฆใชใฎใง $M$ ๅ›žใงใ‚ใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใชใ‚‰ $N$ ใฎไธญใซ $a_{i} \ne a_{i+1}$ ใชใ‚‹ $0 \leq i \leq N-1$ ใŒใ‚ใ‚‹ใ€‚ใ“ใฎใจใ $min(i,N-i)$ ๅ›žใ‚ทใƒ•ใƒˆใ™ใ‚Œใฐใ€ $a_0$ ใจ็•ฐใชใ‚‹ๅ€คใซใ™ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใชใฎใงไปฅไธ‹ใฎใ‚ˆใ†ใซๆ“ไฝœใ™ใ‚‹ใ€‚

  1. $a_0=T_0,T_1,..$ ใ‚’ๅฏ่ƒฝใช้™ใ‚Š $b$ ใซ่ฟฝๅŠ ใ™ใ‚‹
  2. $a_0 \ne T_j$ ใซใชใฃใŸใ‚‰ใ‚ทใƒ•ใƒˆใ—ใฆ $b$ ใซ่ฟฝๅŠ ใ™ใ‚‹
  3. $T$ ใซๅŒใ˜่ฆ็ด ใŒ็ถšใใชใ‚‰ใ‚ทใƒ•ใƒˆใ›ใš่ฟฝๅŠ ใ—ใ€็•ฐใชใ‚‹่ฆ็ด ใŒ็พใ‚ŒใŸใ‚‰1ๅ›žใ‚ทใƒ•ใƒˆใ—ใฆ่ฟฝๅŠ ใ™ใ‚‹

็ญ”ใˆใฏใ‚ทใƒ•ใƒˆๅ›žๆ•ฐ + $M$ ใงใ‚ใ‚‹ใ€‚ $M$ ใ‚’่ถณใ—ๅฟ˜ใ‚Œใชใ„ใ‚ˆใ†ใซใ€‚

ARC 125-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

2ๆ™‚้–“่ถ…ใˆใ€‚

ๅๆฏ”ไพ‹ๆ›ฒ็ทš $y = 1/x$ ใจใ€ๅฏพ่ง’็ทšใจใฎ้–“ใซใ‚ใ‚‹ๆ ผๅญ็‚นใŒ็ญ”ใˆใ€ใจใ„ใ†ใฎใฏใชใ‚“ใจใชใๅˆ†ใ‹ใ‚‹ใ€‚ๅฎŸ้š›ใใฎ้€šใ‚Šใชใฎใ ใŒใ€่€ƒๅฏŸใ—ใฆใฟใ‚‹ใ€‚

$i=0,1,2,3,..$ ใซใคใ„ใฆใ€ $i^2=0,1,4,9,..$ ใงใ‚ใ‚Šใ€ $i^2$ ใจ $(i+1)^2$ ใฎๅทฎใฏ $W_i=2i+1$ ใงใ‚ใ‚‹ใ€‚ใ‚ใ‚‹ $x,y$ ใซใคใ„ใฆใ€ๅŒบ้–“ $[x^2-y,x^2], 0 &lt; y \leq N$ ใซๅŽใพใ‚‹ๅนณๆ–นๆ•ฐใŒ $k$ ๅ€‹ไปฅไธŠใซใชใ‚‹ $W_i$ ใŒไฝ•ๅ€‹ใ‚ใ‚‹ใ‹ ( $C_i$ ใจใ™ใ‚‹)ๆ•ฐใˆใ‚‹ใ€‚ $k=1$ ใฎใจใ $C_1$ ใฏ $1 \le W_i \leq N$ ใ‚’ๆบ€ใŸใ™ $W_i$ ใฎๆ•ฐใงใ‚ใ‚‹ใ€‚ๅŒๆง˜ใซ $1 \leq k \leq sqrt(N)$ ใซใคใ„ใฆ $C_k$ ใฏ $k \le W_i \le \lfloor N/k \rfloor$ ใ‚’ๆบ€ใŸใ™ $W_i$ ใฎๆ•ฐใงใ‚ใ‚‹ใ€‚

ใคใพใ‚Šๆฑ‚ใ‚ใ‚‹็ญ”ใˆใฏใ€ $N$ ใŒๅนณๆ–นๆ•ฐใฎใจใใซๆณจๆ„ใ—ใฆใ€ $\lfloor sqrt(N) \rfloor + \sum_{k=1.. \lceil sqrt(N) \rceil - 1} \lfloor (N/k - k)/2 \rfloor$ ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใจๅผใฏๅŒใ˜ใ ใŒใ€ๅ…ฌๅผ่งฃ่ชฌใฏใ‚‚ใฃใจใ™ใฃใใ‚Šๅผใ‚’ๅฐŽๅ‡บใ—ใฆใ„ใ‚‹ใ€‚

ARC 125-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็†่ฉฐใ‚ใงใฏๅˆ†ใ‹ใ‚‰ใšใ€ๅฎŸ้จ“ใ—ใฆๅˆ†ใ‹ใฃใŸใ€‚

ๅŒบๅˆ†ๅŒ–ใจใฏ $A_0 = 0$ ใจใ—ใฆใ€ $A_{i-1}$ ใจ $A_{i}$ ใฎ้–“(ไธก็ซฏใ‚’ๆŒŸใพใชใ„)ใซใ‚ใ‚‹ๆ•ฐใ‚’ $A_{i}$ ็›ดๅพŒใ‹ใ‚‰้™้ †ใซไธฆในใ‚‹ใ“ใจๆŒ‡ใ™ใ€‚ $A_{i-1}=4$ ใ€ $A_{i}=7$ ใชใ‚‰ใ€ 765 ใจไธฆในใ‚‹ใ€‚

$A$ ใซใ‚ˆใ‚‹ๅŒบๅˆ†ๅŒ–ใ‚’ใ™ใ‚‹ใจๅคง้‡ใซWAใ™ใ‚‹ใ€‚ๅฎŸ้จ“ใ‚ณใƒผใƒ‰ใ‚’ๆ›ธใใจใ€ 10 3 3 7 9 ใฎ็ญ”ใˆใฏ 3 1 7 2 10 9 8 6 5 4 ใงใ‚ใ‚‹ใ€‚ใ—ใ‹ใ—ๅ˜ใชใ‚‹ๅŒบๅˆ†ๅŒ–ใฏ 3 2 1 7 6 5 4 10 9 8 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ 10 3 4 7 9 ใซๅฏพใ—ใฆๆญฃ่งฃใฏ 4 1 7 2 10 9 8 6 5 3 ใ ใŒๅŒบๅˆ†ๅŒ–ใฏ 4 3 2 1 7 6 5 10 9 8 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ๅฎŸ้จ“ใซใ‚ˆใ‚‹่€ƒๅฏŸใ‹ใ‚‰ใ€ $i = 1..N-1$ ใซใคใ„ใฆไปฅไธ‹ใ‚’็นฐใ‚Š่ฟ”ใ™ใ€‚็ญ”ใˆใ‚’ $V$ ใจใ™ใ‚‹ใ€‚

  • $V$ ใซ $A_i$ ใ‚’่ฟฝๅŠ ใ™ใ‚‹ใ€‚
  • $A_{i-1}..A_{i}$ ใฎๆ•ฐใ‚’้›†ๅˆ $S$ ใ‚’ๅ…ฅใ‚Œใ‚‹ใ€‚ $A_{i-1},A_{i}$ ใ‚’ๅซใพใชใ„ใ€‚
  • ใ‚ญใƒฅใƒผใŒ็ฉบใงใชใ‘ใ‚Œใฐ $A_{i}$ ใฎ็›ดๅพŒใซใ€ $S$ ใงๆœ€ๅฐใฎๆ•ฐ $M$ ใ‚’ๆŒŸใ‚€ใ€‚ใคใพใ‚Š $V$ ใซ $M$ ใ‚’่ฟฝๅŠ ใ—ใฆใ€ๆŒŸใ‚“ใ ๆ•ฐใ‚’ $S$ ใ‹ใ‚‰้™คใใ€‚

ๆœ€ๅพŒใซ $A_n$ ใ‚’ $S$ ใซๅŠ ใˆใฆใ€ $S$ ใฎ่ฆ็ด ใ‚’้™้ †ใซ $V$ ใซไป˜ใ‘ๅŠ ใˆใ‚‹ใ€‚ใ“ใ†ใ—ใฆใงใใŸ $V$ ใŒ่งฃใงใ‚ใ‚‹ใ€‚

ARC 126-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่ฒด้‡ๅ“ใ‹ใ‚‰ไฝฟใ†

ไปฅไธ‹ใฎ้ †ใซๅ„ชๅ…ˆ็š„ใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ใ€‚

  1. ้•ทใ•3ใฎๆฃ’x2 + ้•ทใ•4ใฎๆฃ’x1
  2. ้•ทใ•3ใฎๆฃ’x2 + ้•ทใ•2ใฎๆฃ’x2
  3. ้•ทใ•4ใฎๆฃ’x2 + ้•ทใ•2ใฎๆฃ’x1
  4. ้•ทใ•4ใฎๆฃ’x1 + ้•ทใ•2ใฎๆฃ’x3
  5. ้•ทใ•2ใฎๆฃ’x5

ARC 126-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆœ€ๅคงใƒ•ใƒญใƒผใ ใจๆ€ใฃใŸใ‚‰ๅ…จ็„ถ้•ใฃใŸใ€‚

ๆญฃ่งฃใฏใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ ใฃใŸใ€‚ $(a,b)$ ใ‚’่พžๆ›ธ้ †ใคใพใ‚Š $a$ ใฎๆ˜‡้ †ใงใ€ $a$ ใŒ็ญ‰ใ—ใ„่พบใฏ $b$ ใฎๆ˜‡้ †ใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚ใ‚ฝใƒผใƒˆใ—ใŸใ‚‚ใฎใ‚’้ †ใซ่ฟฝๅŠ ใงใใ‚‹ใ‹ใฉใ†ใ‹่€ƒใˆใ‚‹ใ€‚

่พบ $(a_i,b_i)$ ใ‚’่ฟฝๅŠ ใ™ใ‚‹ใจใใ€ใ™ใงใซ่ฟฝๅŠ ใ—ใŸ่พบใฏ $y=0$ ใฎ้ ‚็‚นใฎXๅบงๆจ™ใซใคใ„ใฆ $a_i$ ไปฅไธ‹ใงใ‚ใ‚‹(ใ‚ฝใƒผใƒˆใ—ใŸใฎใง)ใ€‚ใ‚ˆใฃใฆ $y=1$ ใฎ้ ‚็‚นใฎXๅบงๆจ™ใซใคใ„ใฆ $b_i$ ๆœชๆบ€ใฎ่พบใฏไบคใ‚ใ‚‰ใชใ„ใ€‚ใ“ใฎใ‚ˆใ†ใช่พบใฎ้›†ๅˆ $E_i$ ใŒใ‚ใ‚Šใ€่พบ $e \in E_i$ ใซใคใ„ใฆ่พบ $e$ ใจไบคใ‚ใ‚‰ใชใ„่พบใฎ้›†ๅˆ(่‡ช่บซใ‚’ๅซใ‚€)ใซ $(a_i,b_i)$ ใ‚’่ฟฝๅŠ ใ™ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚่พบ $e$ ใจไบคใ‚ใ‚‰ใชใ„่พบใฎ้›†ๅˆใŒ $C_e$ ๅ€‹ใ‚ใ‚‹ใชใ‚‰1่พบ่ถณใ›ใฐใ‚ˆใใ€่พบ $(a_i,b_i)$ ใจไบคใ‚ใ‚‰ใชใ„่พบใฎๆ•ฐใฎๆœ€ๅคงๅ€คใฏ $max(C_e) + 1$ ใงใ‚ใ‚‹ใ€‚

ใ“ใ‚ŒใฏๅŒบ้–“maxใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ“ใจใงๅพ—ใ‚‰ใ‚Œใ‚‹ใ€‚ๆณจๆ„็‚นใจใ—ใฆใ€ $a_i$ ใ‚’ๅ…ฑๆœ‰ใ™ใ‚‹ใคใพใ‚Š $b_i$ ใŒ็•ฐใชใ‚‹่พบใŒ่ค‡ๆ•ฐใ‚ใ‚‹ๅ ดๅˆใ€ไบ’ใ„ใฎๅฝฑ้Ÿฟใ‚’ๅ—ใ‘ใ‚‹ใจWAใ™ใ‚‹ใ€‚ $(a_i,b_1,b_2,..,b_k)$ ใซใคใ„ใฆใ€ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใฎ่ฆ็ด  $b_1,b_2,..,b_k$ ใ‚’ใใ‚Œใžใ‚Œ $D_1,D_2,...,D_k$ ใซๆ›ดๆ–ฐใ™ใ‚‹ใคใ‚‚ใ‚Šใจไฟๅญ˜ใ—ใฆใŠใ„ใฆใ€ $a_i$ ใ‚’ๅค‰ใˆใ‚‹ๅ‰ใซใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚“ใงใ€LISใฎใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจๅฎŸ่ฃ…ใใฎใ‚‚ใฎใ ใจๅˆ†ใ‹ใฃใŸใ€‚็ขบใ‹ใซๆœ€่ฟ‘ๅญฆใ‚“ใ ใ€‚

ARC 126-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ˜˜่งฃๆณ•ใง4 WAsใ‚’ๅ‡บใ—ใฆ็›ดใใ†ใจ่ถณๆŽปใ„ใŸใ‚‰ๆ™‚้–“ใŒๆบถใ‘ใŸใ€‚ๆ–น้‡ใ‚’ๅ‡บใ—็›ดใ—ใฆACใ—ใŸใ€‚

ๅ˜˜่งฃๆณ•ใฏใ€่งฃ $g$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ $A$ ใ‚’ $g$ ใฎๅ€ๆ•ฐใซใ™ใ‚‹ใพใงใฎๅข—ๅˆ†ใ‚’ๆฑ‚ใ‚ใ€ใ“ใฎใ‚ˆใ†ใช $g$ ใ‚’ไบŒๅˆ†ๆŽข็ดขใ™ใ‚‹ใ‚‚ใฎใงใ‚ใ‚‹ใ€‚ใŠใใ‚‰ใ $g$ ใจๅข—ๅˆ†ใซ็Ÿญ่ชฟๆ€งใŒใชใ„ใ€‚

่‡ชๆ˜Žใช่งฃใจใ—ใฆใ€ $N \times max(A) \leq \sum A + K$ ใชใ‚‰ใ€ $K$ ใ‚’ๅ…จ้ƒจ่ถณใ—ใฆๆ•ดๅœฐใ—ใŸๅ€ค $\lfloor (\sum A + K) / N \rfloor$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ $GCD(A) \leq min(A)$ ใชใฎใงใ€ๆ•ดๅœฐใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚

ใ“ใฎๆ–น้‡ใ‚’ๅ…จ้ƒจๆจใฆใฆใ€่ชฟๅ’Œ็ดšๆ•ฐใง่งฃใใ€‚ $A$ ใ‚’ๆ˜‡้ †ใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚ $A$ ใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใ‚’ $h$ ใจใ—ใฆใ€ $A$ ใ‚’ $h$ ใงๅ‰ฒใฃใฆใŠใใ€‚ใ“ใฎๅ‰ๅ‡ฆ็†ใฎๅพŒใฎ $A$ ใซใคใ„ใฆใ€ $g = 2..max(A)$ ใŒ่งฃใฎๅ€™่ฃœใซใชใ‚‹ใ‹ใฉใ†ใ‹็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚ $g = 1$ ใฏๅธธใซ่งฃใฎๅ€™่ฃœใชใฎใง่ชฟในใ‚‹ใพใงใ‚‚ใชใ„ใ€‚

ๅ…ทไฝ“็š„ใซใฏ $g$ ใ‚’ๅ›บๅฎšใ—ใฆๅฐบๅ–ใ‚Šๆณ•ใ™ใ‚‹ใ€‚

  • ๅทฆๅŒบ้–“ $L = 0$ , ๅณๅŒบ้–“ใฎ้–พๅ€ค $T = g$ ใจใ™ใ‚‹
  • $T$ ใ‚ˆใ‚Šๅคงใใ„ใจใ„ใ†ๆกไปถใ‚’ๆบ€ใŸใ™ใ€ๆœ€ๅฐใฎ $A$ ใฎ่ฆ็ด ใฎไฝ็ฝฎ $R$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $[A_L..A_R)$ ใ‚’ $T$ ใซใ™ใ‚‹ใฎใงใ€ๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใ‚’ $g$ ใซใ—ใŸใจใๅพŒใฎ $[A_L..A_R)$ ใฎๅˆ่จˆใฏ $(R-L)T$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ๅ’Œ $S$ ใซๅŠ ็ฎ—ใ™ใ‚‹ใ€‚
  • $R = N$ ใชใ‚‰็ต‚ไบ†ใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ $L = R$, $T = \lceil A_R / g \rceil$ ใซใ—ใฆๆŽข็ดขใ‚’็นฐใ‚Š่ฟ”ใ™ใ€‚
  • $S -{\sum A} \leq K$ ใชใ‚‰ใ€ $g$ ใฏ่งฃใฎๅ€™่ฃœใงใ‚ใ‚‹ใ€‚

ใ“ใฎๅฐบๅ–ใ‚Šๆณ•ใฏ $N/g$ ๅ›žใง็ต‚ใ‚ใ‚‹ใฎใงใ€่จˆ็ฎ—ๅ›žๆ•ฐใฏ่ชฟๅ’Œ็ดšๆ•ฐ $O(Nlog(N))$ ใงใ‚ใ‚‹ใ€‚ๅ…จไฝ“ใงใฏใ‚‚ใ—ใ‹ใ—ใŸใ‚‰ $O(Nlog(N)log(N))$ ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚่งฃใฎๅ€™่ฃœใจใชใ‚‹ๆœ€ๅคงใฎ $g$ ใซใคใ„ใฆ $gh$ ใŒ่งฃใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใจๅŒใ˜ๆ–น้‡ใงใ‚ใ‚‹ใ€‚ๅฎŸใฏ $h = 1$ ใจใ—ใฆๆง‹ใ‚ใชใ„ใ€‚

ARC 127-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

Leading 1sใฎ้•ทใ•ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ใใฎ็ฏ„ๅ›ฒใซๅŽใพใ‚‹ๆ•ฐใŒ $N$ ไปฅไธ‹ใ‹ใฉใ†ใ‹่ชฟในใ‚‹ใ€‚

ๆกๆ•ฐ $W$ , Leading 1s ใŒ $L$ ๅ€‹ใฎๆ•ดๆ•ฐใฎ็ฏ„ๅ›ฒใ‚’่€ƒใˆใ‚‹ใ€‚

  • $W = L$ ใชใ‚‰ใ€ใ™ในใฆใฎๆกใŒ1ใฎๆ•ดๆ•ฐใŒไธ€็จฎ้กžใ‚ใ‚‹
  • ใใ†ใงใชใ‘ใ‚Œใฐใ€ $[1..100..0, 1..109..9]$ ใจ $[1..120..0, 1..199..9]$ ใฎไบŒใคใฎ็ฏ„ๅ›ฒใŒใ‚ใ‚‹ใ€‚ใ“ใฎ็ฏ„ๅ›ฒใซใ‚ใ‚‹ $N$ ไปฅไธ‹ใฎๆ•ดๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ใ€‚ใ‚ˆใ‚Šๆญฃ็ขบใซใฏใ€ไปฅไธ‹ใฎใ‚ˆใ†ใช็ฏ„ๅ›ฒใ‚’ๅฎšใ‚ใ‚‹ใ€‚
    • ๅ…ˆ้ ญใŒ $L$ ๅ€‹ใฎ 1 ใงๆฎ‹ใ‚ŠใŒ0ใจใชใ‚‹ๆ•ดๆ•ฐใ‚’็ฏ„ๅ›ฒใฎไธ‹้™ใ€ๅ…ˆ้ ญใŒ $L$ ๅ€‹ใฎ 1ใ€ๆฌกใŒ0ใ€ๆฎ‹ใ‚ŠใŒ9ใจใชใ‚‹ๆ•ดๆ•ฐใ‚’็ฏ„ๅ›ฒใฎไธŠ้™ใจใ™ใ‚‹ใ€‚
    • ๅ…ˆ้ ญใŒ $L$ ๅ€‹ใฎ 1ใ€ๆฌกใŒ2ใ€ๆฎ‹ใ‚ŠใŒ0ใจใชใ‚‹ๆ•ดๆ•ฐใ‚’็ฏ„ๅ›ฒใฎไธ‹้™ใ€ๅ…ˆ้ ญใŒ $L$ ๅ€‹ใฎ 1ใ€ๆฎ‹ใ‚ŠใŒใ™ในใฆ9ใจใชใ‚‹ๆ•ดๆ•ฐใ‚’็ฏ„ๅ›ฒใฎไธŠ้™ใจใ™ใ‚‹ใ€‚

ARC 127-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฏใ‹ใ›ใŸใ‚‰่งฃใ‘ใŸใ€‚

ๅ•้กŒใ‚’่ฆ‹ใŸๅˆๆ—ฅใซใฏ่งฃใ‘ใšใ€ๆ•ฐๆ—ฅ็ตŒใฃใŸใ‚‰็ญ”ใˆใŒๅˆ†ใ‹ใฃใŸใ€‚ๆœ€ไธŠไฝๆกใฏ0,1,2ใฎ็นฐใ‚Š่ฟ”ใ—ใ—ใ‹ใชใ„ใ€‚ๆœ€ไธŠไฝๆกใŒ2ใฎใจใใซใ€3้€ฒๆ•ฐ $L - 1$ ๆกใง $0..(N-1)$ ใพใงไฝœใฃใฆ็ตๅˆใ™ใ‚Œใฐใ€ $t$ ใจใ—ใฆใ‚ใ‚Šใ†ใ‚‹ๆ–‡ๅญ—ๅˆ—ใฎไธญใง่พžๆ›ธ้ †ๆœ€ๅฐใฎๆ–‡ๅญ—ๅˆ—ใ‚’้”ๆˆใงใใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใฎๆกใซใคใ„ใฆๅคงใใ•ใ‚’ๆฐ—ใซใ™ใ‚‹ๅฟ…่ฆใฏใชใ„ใ€0,1ใฎๅ‡บ็พๅ›žๆ•ฐใ‚’ใใ‚ใˆใ‚Œใฐใ‚ˆใ„ใฎใงใ€ๆœ€ไธŠไฝๆกใŒ1ใฎใจใใ€ไป–ใฎๆกใฏๆœ€ไธŠไฝๆกใŒ2ใฎใจใใฎๅ ดๅˆใฎ0,1,2ใ‚’1,2,0ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ๆœ€ไธŠไฝๆกใŒ0ใฎใจใใ€ไป–ใฎๆกใฏๆœ€ไธŠไฝๆกใŒ2ใฎใจใใฎๅ ดๅˆใฎ0,1,2ใ‚’2,0,1ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚

ARC 128-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

้€ฃๅ‹้€ฃๆ•—

$A_i \leq A_{i+1} \leq A_{i+2} \leq ...$ ใŒ็ถšใ„ใฆใ„ใ‚‹ใชใ‚‰ใ€้€”ๅˆ‡ใ‚Œใ‚‹ใพใง้‡‘ใ‚’้Š€ใซไบคๆ›ใ—ใชใ„ๆ–นใŒๅพ—ใงใ‚ใ‚‹ใ€‚้€†ใซ $A_i \geq A_{i+1} \geq A_{i+2} \geq ...$ ใŒ็ถšใ„ใฆใ„ใ‚‹ใชใ‚‰ใ€้€”ๅˆ‡ใ‚Œใ‚‹ใพใง้Š€ใ‚’้‡‘ใซไบคๆ›ใ—ใชใ„ๆ–นใŒๅพ—ใงใ‚ใ‚‹ใ€‚ใคใพใ‚ŠไธŠๆ˜‡ใ‹ใ‚‰ไธ‹่ฝใ€ไธ‹่ฝใ‹ใ‚‰ไธŠๆ˜‡ใซ่ปขใ˜ใ‚‹ๅค‰ๆ›็‚นใงไบคๆ›ใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

  • ๅˆๆœŸๅ€คใฏไธŠๆ˜‡ใซใ™ใ‚‹ใ€‚ใใ†ใ™ใ‚‹ใจ $A_1 &gt; A_2$ ใฎใจใใซ $A_1$ ใ‚’ๅค‰ๅŒ–็‚นใซใงใใ‚‹
  • $A_N$ ใŒไธ‹่ฝใง็ต‚ใ‚ใฃใŸใจใใฏ $A_N$ ใ‚’ๅค‰ๅŒ–็‚นใซใ™ใ‚‹
  • ไบคๆ›ใ™ใ‚‹ๅ›žๆ•ฐใฏ0ใพใŸใฏๅถๆ•ฐใงใ€ๅฅ‡ๆ•ฐๅ›žไบคๆ›ใ™ใ‚‹ใจ้‡‘ใŒๅพ—ใ‚‰ใ‚Œใชใ„ใฎใงใ€ๅค‰ๆ›็‚นใŒๅฅ‡ๆ•ฐใชใ‚‰ๆœ€ๅพŒใฎไธ€ใคใ‚’ๅ‰Šใ‚‹

ๅ…ฌๅผ่งฃ่ชฌใŒไธŠๆ‰‹ใ็†่งฃใงใใชใ„ใฎใงใ™ใŒใ€ไธŠ่จ˜ใจๅฎŸ่ฃ…ใฏๅŒใ˜ใงใ™(ไธ‹่ฝใฎ้ ‚็‚นใง้‡‘ใ‚’้Š€ใซไบคๆ›ใ—ใ€่ฐทใง้Š€ใ‚’้‡‘ใซไบคๆ›ใ™ใ‚‹ใ“ใจใฏใ‚ณใƒผใƒ‰ใ‹ใ‚‰ๅˆ†ใ‹ใ‚‹)ใ€‚

ARC 128-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธๅค‰้‡ใซๆณจ็›ฎใ—ใฆ็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚

$R = G$ ใพใŸใฏ $R = B$ ใพใŸใฏ $G = B$ ใŒๆˆใ‚Š็ซ‹ใคใจใใฏใ€ใใ‚Œใ‚‰ใฎๆ•ฐใ ใ‘ๆ“ไฝœใ™ใ‚Œใฐใƒœใƒผใƒซใ‚’1็จฎ้กžใซใงใใ‚‹ใ€‚

ใใ†ใงใชใ„ใจใใ‚’่€ƒใˆใ‚‹ใ€‚ใƒœใƒผใƒซใฎๆ•ฐใฎ็ทๅ’ŒใŒไธๅค‰้‡ใงใ‚ใ‚‹ใ€‚ใคใพใ‚Š $S = R + G + B$ ๅ€‹ใฎใƒœใƒผใƒซใŒไธ€็จฎ้กžใ ใ‘ใ‚ใ‚‹ใจใ—ใฆใ€ $R,G,B$ ๅ€‹ใซใ™ใ‚‹้€†ๆ“ไฝœใŒๅฏ่ƒฝใ‹่ชฟในใ‚‹ใ€‚

  • $S$ ๅ€‹ใฎๅ˜่‰ฒใฎใƒœใƒผใƒซใŒใ‚ใฃใŸใจใ—ใฆใ€ใ“ใ‚Œใ‚‰ใ‚’3่‰ฒใฎใƒœใƒผใƒซ $p, p, S - 2p$ ๅ€‹ใซ้…ๅˆ†ใ™ใ‚‹
  • ใƒœใƒผใƒซใฎๆ•ฐใ‚’่ชฟๆ•ดใ™ใ‚‹ใ€‚ $low = p - 2q$ , $middle = S - 2p + q$, $high = p + q$ๅ€‹ใซ่ชฟๆ•ดใ™ใ‚‹ใ€‚ใ“ใ‚ŒใŒๆˆใ‚Š็ซ‹ใคๆกไปถใฏใ€ $high - low$ ใ‚’3ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใ“ใจใงใ‚ใ‚‹ใ€‚
  • $q = high - low$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’้กŒๆ„ใ‚’ๆบ€ใŸใ™ใ‹ใฉใ†ใ‹่ชฟในใ‚‹ $p \leq 0$ , $q \leq 0$ ใŠใ‚ˆใณไธŠ่จ˜ $low, middle, high$ ใฎ็ญ‰ๅผใŒๆˆ็ซ‹ใ™ใ‚Œใฐใ€ๆœ€ๅฐใฎๆ“ไฝœๅ›žๆ•ฐใฏ $p + q$ ๅ›žใงใ‚ใ‚‹ใ€‚
  • ๅฎŸใฏ $low \leq high \leq middle$ ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใŒใ€ใใ‚Œใงใ‚‚ๆ“ไฝœๅฏ่ƒฝใชใฎใง้กŒๆ„ใ‚’ๆบ€ใŸใ™

$low, middle, high$ ใฏ $R,G,B$ ใฎ้ †ๅˆ—6้€šใ‚Šใชใฎใงใ€ใใ‚Œใžใ‚Œๆฑบใ‚ๆ‰“ใกใ—ใฆ่ฉฆใ™ใ€‚ใ“ใ†ใ—ใฆๆฑ‚ใ‚ใŸๆ“ไฝœๅ›žๆ•ฐใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹(ๆ“ไฝœไธ่ƒฝใชใ‚‰ -1)ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€ๆœ€ๅพŒใฎๅ˜่‰ฒใฎใƒœใƒผใƒซใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใฆใ€ไบŒ่‰ฒใ‚’ไธ€่‰ฒใซใ™ใ‚‹ๆ‰‹้ †ใ‚’ๅฐŽๅ‡บใ—ใฆใ„ใ‚‹ใ€‚ๆœ€ๅพŒใฏ0ๅ€‹ใซใชใ‚‹ไบŒ่‰ฒใƒœใƒผใƒซใฎๅ€‹ๆ•ฐใซใคใ„ใฆใ€ๅ€‹ๆ•ฐใฎๅทฎใ‚’3ใงๅ‰ฒใฃใŸไฝ™ใ‚ŠใŒไธๅค‰้‡ใงใ‚ใ‚‹ใ“ใจใ‚’ๅˆฉ็”จใ—ใฆใ„ใ‚‹ใ€‚

ARC 129-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่งฃใ‘ใชใ‹ใฃใŸ

่งฃ่ชฌใ‚’่ฆ‹ใ‚‹ใพใงใ€่งฃใๆ–นใŒใ•ใฃใฑใ‚Šใ‚ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ๆกDPใจๆ€ใ„ใใ‚„ใ€ๅ˜ใซ $N$ ใฎ็ซ‹ใฃใฆใ„ใ‚‹ใƒ“ใƒƒใƒˆใ‚’่ฝใจใ™ใ ใ‘ใงใ‚ใ‚‹ใ€‚

ARC 129-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ•ฐๆ™‚้–“ๆŽ›ใ‹ใฃใŸใŒ่งฃใ‘ใŸใ€‚

ๅ•้กŒใ‚’็†่งฃใ—้–“้•ใˆใฆใ„ใฆใ€ๅŒบ้–“ใฎ้–“ใฎๆœ€ๅฐใฎ้š™้–“ใ‚’ๆฑ‚ใ‚ใ‚‹ใฎใ ใจๆ€ใฃใฆใ„ใŸใ€‚ๅ…จ็„ถใใ†ใงใฏใชใ‹ใฃใŸใ€‚

ใพใšใ™ในใฆใฎๅŒบ้–“ใซๅน…1ไปฅไธŠใฎ้‡ใชใ‚ŠใŒใ‚ใ‚‹ใชใ‚‰ใ€็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏ $max(l) &lt; min(r)$ ใชใ‚‰้‡ใชใ‚ŠใŒใ‚ใ‚‹ใจๅˆ†ใ‹ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐใ€ $max(l) - min(r)$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใ‚‚ใฃใจ็ฐกๆฝ”ใซๆ›ธใใจ $max(0, max(l) - min(r))$ ใงใ‚ใ‚‹ใ€‚็ญ”ใˆใฏใ“ใฎๅŠๅˆ†(ๅฐๆ•ฐ็‚นไปฅไธ‹ๅˆ‡ใ‚ŠไธŠใ’)ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏๅผๅค‰ๅฝขใ‚’็”จใ„ใฆ้ฎฎใ‚„ใ‹ใซๅฐŽๅ‡บใ—ใฆใ„ใ‚‹ใ€‚

ARC 129-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ•ฐๆ™‚้–“ๆŽ›ใ‹ใฃใฆใ‚‚่งฃใ‘ใชใ‹ใฃใŸใ€‚ๅคš่ง’ๆ•ฐๅฎš็†ใ‚’็Ÿฅใ‚‰ใชใ„ใจ่งฃใ‘ใชใ„ใ€‚

ๅทฆๅดใซใ„ใ„ๆ„Ÿใ˜ใซๆ•ฐๅˆ—ใ‚’ๅปถใฐใ™ๆ–นๆณ•ใŒๅ…จใๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ๆ•ฐๅญ—ใ‚’ไธ‹ใฎๆกใ‹ใ‚‰ใฟใŸใจใใฎ $mod 7$ ใ‚’ไธ€่‡ดใ•ใ›ใ‚Œใฐใ„ใ„ใฎใ ใŒใ€ไป–ใฎๆ–นใฎใ‚ณใƒผใƒ‰ใ‚’่ฆ‹ใฆ7ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ๅ ดๅˆใ‚’ไธŠๆ‰‹ใๆ‰ฑใ‚ใชใ„ใจ็ญ”ใˆใŒๅˆใ‚ใชใ„ใจๅˆ†ใ‹ใฃใŸใ€‚

ARC 129-D

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ตถๅฏพๅ€คใ‚’ๅค–ใใ†ใจใ—ใฆๆ‚ชๆˆฆ่‹ฆ้—˜ใ—ใ€็ตๅฑ€่งฃใ‘ใชใ‹ใฃใŸใ€‚ARCใซใ‚ˆใใ‚ใ‚‹ใ€ๅฎŸใฏๆœ€้ฉ่งฃใ‚’ๅธธใซๆง‹็ฏ‰ใงใใ‚‹ๅ•้กŒใงใ‚ใ‚‹ใ€‚ $A,B &lt; C,D$ ใชใ‚‰ใ€ $|A-C|+|B-D| = |A-D|+|B-C|$ ใงใ‚ใ‚‹ใ“ใจใซๆฐ—ใŒไป˜ใๅฟ…่ฆใŒใ‚ใฃใŸใ€‚

ARC 130-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚น

ๆ–‡ๅญ—ใ‚’ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นๅœง็ธฎใ—ใฆใ€ๅŒใ˜ๆ–‡ๅญ—ใŒ2ๅ€‹ไปฅไธŠ็ถšใ„ใŸใ‚‰ใ€้€ฃ็ถšใ™ใ‚‹ๆ–‡ๅญ—ใ‹ใ‚‰2ๅ€‹้™คใๆ–นๆณ• $len(len-1)/2$ ้€šใ‚Šใ‚’ๅ…จ้ƒจ่ถณใ™ใ€‚ $S$ ใฎๅ‰ๅพŒใซ $S$ ใซๅ‡บ็พใ—ใชใ„ๆ–‡ๅญ—ใคใพใ‚Š่‹ฑๅฐๆ–‡ๅญ—ไปฅๅค–ใŸใจใˆใฐ็ฉบ็™ฝๆ–‡ๅญ— ใ‚’ๅŠ ใˆใฆใŠใใจใ€ $S$ ใฎๆœ€ๅพŒใฎๆ–‡ๅญ—ใ‚’็‰นๅˆฅๆ‰ฑใ„ใ—ใชใใฆๆธˆใ‚€ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚‚่กจ็พใฏ็•ฐใชใ‚‹ใŒใ€ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นใ‚’ๆ•ฐใˆใ‚‹ใ“ใจใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 130-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่งฃใใฎใ‚’ๅฟ˜ใ‚Œใฆใ„ใŸใ€‚

ABC 346-EใŒ่งฃใ‘ใชใ‹ใฃใŸใฎใ ใŒใ€ARC 130-BใŒไผผใŸใ‚ˆใ†ใชๅ•้กŒใ ใจ่จ€ใ†ๆŒ‡ๆ‘˜ใŒใ‚ใฃใŸใ€‚็ขบใ‹ใซใใฎ้€šใ‚ŠใงARC 130-Bใ‚’่งฃใ„ใฆใ„ใ‚ŒใฐABC 346-Eใ‚‚่งฃใ‘ใŸใฎใ ใจๆ€ใ†ใจๆ‚”ใ—ใ„ใ€‚ใ‚ใ‹ใฃใฆใ—ใพใˆใฐใ€ใ‚ˆใใ‚ใ‚‹ใ‚ฏใ‚จใƒช้€†ๅ†็”Ÿใงใ‚ใ‚‹ใ€‚

ARC 130-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆก็นฐใ‚ŠไธŠใŒใ‚Šใ‚’้€ฃ้Ž–ใ™ใ‚Œใฐใ‚ˆใใ€ไธ€็•ชๅฐใ•ใ„ๆกใ‹ใ‚‰็‚น็ซใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

$W_A$ ใ‚’ $A$ ใฎๆกๆ•ฐใ€ $W_B$ ใ‚’ $B$ ใฎๆกๆ•ฐใจใ™ใ‚‹ใ€‚ $W_A \leq W_B$ ใจไปฎๅฎšใ™ใ‚‹(ใใ†ใงใชใ„ใชใ‚‰ $A,B$ ใ‚’้€†ใจใฟใชใ™)ใ€‚

  • $B$ ใฎๆกใ ใŒ $A$ ใฎๆกใงใฏใชใ„ใ€ใคใพใ‚Š $i &gt; W_A$ ๆก็›ฎใซ9ใ‚’ใšใ‚‰ใฃใจไธฆในใ‚‹ใ€‚ใ“ใฎ็ฏ„ๅ›ฒใ‚’ $[L_9, R_9]$ ใจใ™ใ‚‹ใ€‚
  • ใใฎๆฌกใซ $i = W_A..2$ ๆก็›ฎใซใ€่ถณใ—ใฆ9ใซใชใ‚‹ๆ•ฐใ‚’ๅคงใใชๆกใ‹ใ‚‰ไธฆในใ‚‹ใ€‚ใ“ใฎ็ฏ„ๅ›ฒใ‚’ $[L_A, R_A]$ ใจใ™ใ‚‹ใ€‚
  • ใใฎๆฌกใซ $i &gt; j = W_A..1$ ๆก็›ฎใซใ€่ถณใ—ใฆ10ไปฅไธŠใซใชใ‚‹ๆ•ฐใ‚’ไธฆในใ‚‹ใ€‚ใ“ใฎ็ฏ„ๅ›ฒใ‚’ $[L_C, R_C]$ ใจใ™ใ‚‹ใ€‚CใฏcarryใฎCใงใ‚ใ‚‹ใ€‚

ใใ†ใ™ใ‚Œใฐใ€ $[L_C, R_C]$ ็›ฎใฏ็นฐใ‚ŠไธŠใŒใ‚Šใ€ $[L_A, R_A]$ ๆก็›ฎใฏ็นฐใ‚ŠไธŠใŒใฃใฆ0ใซใชใ‚Šใ€ $[L_9, R_9]$ ๆก็›ฎใ‚‚็นฐใ‚ŠไธŠใŒใฃใฆ0ใซใชใ‚Šใ€ใงใใ‚‹ใ ใ‘ใŸใใ•ใ‚“0ใ‚’ไฝœใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใใ‚Œไปฅๅค–ใฎ้ƒจๅˆ†ใฏใ€ๆกใŒ็นฐใ‚ŠไธŠใŒใ‚‰ใชใ‘ใ‚Œใฐ็ญ”ใˆใซใฏๅฝฑ้Ÿฟใ›ใšใ€็นฐใ‚ŠไธŠใŒใฃใฆใ‚‚9ใŒ0ใซใชใ‚Œใฐๅพ—ใชใฎใง่€ƒๆ…ฎใ—ใชใ„ใ€‚

ๆœ€ๅˆใซ $A,B$ ใซ 0..9 ใใ‚Œใžใ‚ŒใŒๅ‡บ็พใ™ใ‚‹ๅ›žๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ใ€‚ๅ•้กŒใฏใ€ไธŠ่จ˜ใฎๅ‰ฒใ‚Šๅฝ“ใฆใฎๅ„ชๅ…ˆๅบฆใงใ‚ใ‚‹ใ€‚

  • $[L_A, R_A]$ ใ‚’ๆœ€ๅˆใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ใ€‚ๆœ€ๅคง $W_A - 1$ ๅ€‹้›†ใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’้–“้•ใˆใ‚‹ใจ1 WAใ™ใ‚‹ใ€‚
  • $[L_C, R_C]$ ใ‚’ๆœ€ๅˆใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ใ€‚ใ“ใฎใจใ $B$ ใซใ‚ใ‚‹ 9 ใ‚’ไฝฟใ‚ใชใ„ใ€‚ๆœ€ๅคง $W_A - (R_A + 1 - L_A)$ ๅ€‹้›†ใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’้–“้•ใˆใ‚‹ใจ1 WAใ™ใ‚‹ใ€‚
  • $[L_C, R_C]$ ใŒ็ฉบใง $B$ ใซ 9 ใŒ็„กใ„ใชใ‚‰ใ€ไธ€ๅˆ‡็นฐใ‚ŠไธŠใŒใ‚Šใงใใชใ„ใฎใงใ€ๅ…ฅๅŠ›ใฎ $A,B$ ใŒ็ญ”ใˆใงใ‚ใ‚‹
  • $[L_C, R_C]$ ใŒ็ฉบใชใ‚‰ใ€ $B$ ใ‹ใ‚‰ 9 ใ‚’ไฝฟใ„ใ€ๅŒบ้–“้•ท1ใฎ $[L_C, R_C]$ ใ‚’ไฝœใ‚‹
  • $B$ ใฎไฝ™ใฃใŸ 9 ใ‚’ $[L_9, R_9]$ ใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹
  • ๆฎ‹ใฃใŸๆ•ฐๅญ—ใฏใฉใ†ๅ‰ฒใ‚Šๅฝ“ใฆใฆใ‚‚ใ‚ˆใ„

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚€ใจ $[L_C, R_C]$ ใ‚’ๆœ€ๅˆใฎๆกใ‹ใ‚‰่ฉฐใ‚ใฆใ‚ˆใ‹ใฃใŸใ‚‰ใ—ใ„ใ€‚

ARC 131-140

ARC 131-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ…ฅๅŠ›ไพ‹ใซใชใ„ใ‚‚ใฎใ‚’่ฃœใ†

ๅ…ฅๅŠ›ไพ‹ใซใฏ $B$ ใŒๅฅ‡ๆ•ฐใฎไพ‹ใŒใชใ„ใฎใง่‡ชๅˆ†ใงไฝœใฃใฆ็ขบใ‹ใ‚ใ‚‹ใ€‚ $A$ ใฏใใฎใพใพๅ‡บๅŠ›ใ™ใ‚Œใฐใ‚ˆใใ€ใใฎๅพŒ $B$ ใฏๅŠๅˆ†ใซใ—ใŸๅ€คใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ๅŠๅˆ†ใซใ—ใฆๅฐๆ•ฐ็‚นไปฅไธ‹ใ‚’ๅˆ‡ใ‚Šๆจใฆใชใ„ใ‚ˆใ†ใซใ€

  • BใŒๅถๆ•ฐใชใ‚‰ $B/2$
  • BใŒๅฅ‡ๆ•ฐใชใ‚‰ 0 ใ‚’ๅ‡บๅŠ›ใ—ใŸใ‚ใจ $5B = 10B/2$

ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚BใŒๅฅ‡ๆ•ฐใฎใจใ 0 ใ‚’ๅ‡บๅŠ›ใ—ใชใ„ใจใ€2ๅ€ใ—ใŸใจใใซๆกใŒ็นฐใ‚ŠไธŠใŒใฃใฆ $A$ ใŒๅค‰ใ‚ใฃใฆใ—ใพใ†ใ“ใจใŒใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ฆ‹ใ‚‹ใจใ€ $B,A$ ใฎ้ †ใซๅ‡บๅŠ›ใ™ใ‚Œใฐใ‚ˆใ‹ใฃใŸใ€‚ใ—ใพใฃใŸใ€ $5B$ ใจ $A$ ใฎ้–“ใซไฝ™ๅˆ†ใช0ใŒใ‚ใฃใฆใ‚‚็ญ”ใˆใŒ $10^{18}$ ๆœชๆบ€ใชใ‚‰ไฝ•ใงใ‚‚ใ„ใ„ใ“ใจใซๆฐ—ใŒไป˜ใ‹ใชใ‹ใฃใŸใ€‚ใชใฎใง ใ“ใฎใ‚ˆใ† ใซๆ›ธใ‘ใ‚‹ใ€‚

ARC 131-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ“ใƒƒใƒˆใƒœใƒผใƒ‰

ใƒžใ‚นใซ1..5ใ‚’ๅ…ฅใ‚Œใ‚‰ใ‚Œใ‚‹ใ“ใจใงใฏใชใใ€ๅ…ฅใ‚Œใ‚‰ใ‚Œใชใ„ใ“ใจใ‚’็ฎก็†ใ™ใ‚‹ใ€‚ใชใŠไปฅไธ‹ใงใฏ1..5ใ‚’0..4ใซ่ชญใฟๆ›ฟใˆใ‚‹ใ€‚

ใƒžใ‚นใ‚’ std::bitset<5> ใง่กจ็พใ—ใ€ $d=0..4$ ใ‚’ๅ…ฅใ‚Œใ‚‰ใ‚Œใชใ„ใ“ใจใ‚’ $grid[i][j][d] == true$ ใ€ๅ…ฅใ‚Œใ‚‰ใ‚Œใ‚‹ใ“ใจใ‚’ $grid[i][j][d] == false$ ใจใ™ใ‚‹ใ€‚ๅบงๆจ™ $i,j$ ใซ $d$ ใ‚’ๅ…ฅใ‚Œใ‚‹ใชใ‚‰ $grid[i][j][k \ne d] = true$, $grid[i][j][d] = false$ , $grid[i \pm 1][j][d] = true$, $grid[i][j \pm 1][d] = true$ ใงใ‚ใ‚‹ใ€‚ใ‚ปใƒณใƒใƒใƒซใจใ—ใฆใ€ๅบงๆจ™ $0,H,W$ ใ‚’็”จๆ„ใ™ใ‚‹ใจไพ‹ๅค–ๅ‡ฆ็†ใŒๆฅฝใซใชใ‚‹ใ€‚

ใƒžใ‚นใซ่ค‡ๆ•ฐใฎๅ€™่ฃœใŒใ‚ใ‚‹ใชใ‚‰ใ€ๆ—ขใซๅŸ‹ใ‚ใŸใƒžใ‚นใจ็Ÿ›็›พใ—ใชใ‘ใ‚Œใฐใ‚ˆใ„ใ€‚ใ‚ˆใฃใฆๅค–ใƒซใƒผใƒ— $i=1..N$, ๅ†…ใƒซใƒผใƒ— $j=1..N$ ใจใ—ใฆใ€

  • ใƒžใ‚นใซๅ€™่ฃœใŒไธ€ใคใ—ใ‹ใชใ„ใชใ‚‰ใใ‚Œใ‚’ไฝฟใ†
  • ใƒžใ‚นใซๅ€™่ฃœใŒ่ค‡ๆ•ฐใ‚ใ‚‹ใชใ‚‰ๆœ€ใ‚‚็•ชๅทใฎๅฐใ•ใ„็•ชๅทใ‚’ไฝฟใ†

ใ‚’็นฐใ‚Š่ฟ”ใ—ใฆใƒžใ‚นใ‚’ๅŸ‹ใ‚ใ‚‹ใ€‚

ARC 131-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ…จใ่งฃๆณ•ใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ๅฎŸ้จ“ใ™ใ‚‹ใจใ‚ใ‹ใ‚‹ใ€‚

ARC 132-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่กŒใจๅˆ—ใ‚’้ฉๅฎœๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใจใ€ๅทฆไธŠใซ้ป’ใƒžใ‚นใ‚’ๅฏ„ใ›ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚้ป’ใƒžใ‚นใฎๆ•ฐใง่กŒใ‚’้™้ †ใซใ‚ฝใƒผใƒˆใ—ใฆใ€ๅ…ƒใ€…ใฎ่กŒใŒใฉใ“ใซ่กŒใฃใŸใ‹ใ‚’ๅฏพๅฟœไป˜ใ‘ใ‚Œใฐใ„ใ„(ๅˆ—ใ‚‚ๅŒๆง˜)ใ€‚

ใ‚ฏใ‚จใƒชใซๅฏพใ—ใฆใฏใ€ๅ…ฅใ‚Œๆ›ฟใˆๅ…ˆใฎ่กŒ็•ชๅทใจๅˆ—็•ชๅทใซ่ชญใฟๆ›ฟใˆใฆใ€ๅทฆไธŠใ‹ๅฏพ่ง’็ทšไธŠใชใ‚‰้ป’ใƒžใ‚นใ€ใใ‚Œไปฅๅค–ใชใ‚‰็™ฝใƒžใ‚นใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏ $(r,c)$ ใŒ $r-1+c-1 \leq n$ ใงใ‚ใ‚‹ใ‹ๅฆใ‹ใงๅˆ†ใ‹ใ‚‹ใ€‚

ARC 132-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฏ่ƒฝๆ‰‹ใŒๅฐ‘ใชใ„

ใ“ใฎๆ“ไฝœใงใงใใ‚‹ใ“ใจใฏใ€ๅ…ˆ้ ญใ‚’ $1$ ใซใ™ใ‚‹ใ“ใจใจใ€ๆœซๅฐพใ‚’ $n$ ใซใ™ใ‚‹ใ“ใจใ ใ‘ใงใ‚ใ‚‹ใ€‚ใใ‚Œไปฅๅค–ใฏๆ“ไฝœใ—ใฆใ‚‚ๆ˜‡้ †ใซไธฆในๆ›ฟใˆใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ใ—ใ‹ใ—ๆ˜‡้ †ใซใงใใ‚‹ใ“ใจใฏไฟ่จผใ•ใ‚Œใฆใ„ใ‚‹ใฎใงใ€ๅ…ˆ้ ญใ‚’ $1$ ใซใ™ใ‚‹ใ“ใจใจใ€ๆœซๅฐพใ‚’ $n$ ใซใ™ใ‚‹ใ“ใจใ‚’ใ™ใ‚Œใฐใ„ใ„ใ€‚

ๅ…ˆ้ ญใ‚’ $1$ ใซใ™ใ‚‹ใซใฏใ€ใ‚ทใƒ•ใƒˆใ‹ใ€ๅ่ปขใ—ใฆใ‚ทใƒ•ใƒˆใ‹ใ€ใฉใกใ‚‰ใ‹ๅฐ‘ใชใ„ๆ–นใ‚’ใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ใใฎๅพŒๆœซๅฐพใŒ $n$ ใงใชใ‘ใ‚Œใฐ $p_2=n$ ใซใชใฃใฆใ„ใ‚‹ใฏใšใชใฎใงใ€ใ‚ทใƒ•ใƒˆใ—ใฆๅ่ปขใ™ใ‚‹ใ€‚ใใ‚Œไปฅๅค–ใฎ็Šถๆณใ‚’่€ƒใˆใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏๅฐ‘ใ—็•ฐใชใ‚‹ใŒใ€ๅฏ่ƒฝๆ‰‹ใŒๅฐ‘ใชใ„ใ“ใจใฏ็ขบใ‹ใงใ‚ใ‚‹ใ€‚

ARC 132-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธ€ๅบฆ่งฃใ“ใ†ใจใ—ใฆๅพŒๅ›žใ—ใซใ—ใŸใ‚‰ใ—ใ„ใŒใ€ๅพŒๆ—ฅ่ฆ‹็›ดใ—ใŸใ‚‰่‡ชๅŠ›ACใ—ใŸใ€‚ไปฅไธ‹ $n,d$ ใ‚’ $N,D$ ใจ่กจ่จ˜ใ™ใ‚‹ใ€‚

$D$ ใŒๅฐใ•ใ„ใฎใŒๅฆ‚ไฝ•ใซใ‚‚ใƒ’ใƒณใƒˆใงใ‚ใ‚‹ใ€‚ $p$ ใ‚’ไฝ•ใซใ™ใ‚‹ใ‹ใงใฏใชใใ€ๆ•ฐ $i=1..N$ ใ‚’ใฉใ“ใซ็ฝฎใใ‹ใ‚’ใ‚นใƒฉใ‚คใƒ‡ใ‚ฃใƒณใ‚ฐใ‚ฆใ‚ฃใƒณใƒ‰ใ‚ฆใง็ฎก็†ใ™ใ‚‹ใ€‚0-based indexingใง่จˆ็ฎ—ใ—ใŸใ‚‰ใƒ‡ใƒใƒƒใ‚ฐใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใŸใฎใงใ€ไปฅไธ‹1-based indexingใจใ™ใ‚‹ใ€‚

ๆ•ฐ $i$ ใ‚’็ฝฎใ‘ใ‚‹ๅ ดๆ‰€ใฏ $max(1,i-d)..min(N,i+d)$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ $2D+1$ ใƒ“ใƒƒใƒˆใฎใƒ“ใƒƒใƒˆใƒžใƒƒใƒ—ใง็ฎก็†ใ™ใ‚‹ใ€‚ใ“ใฎ้…ๅˆ—ใฏ $2^{2D+1}$ ็Šถๆ…‹ใ‚’ๆŒใกใ€ใƒ“ใƒƒใƒˆ $k$ ใฏใ€ $P_{i-d+k}$ ใซๅ€คใ‚’ๅ…ฅใ‚ŒใŸใ“ใจใ‚’ๆ„ๅ‘ณใ™ใ‚‹ใ€‚

$DP[i][j]$ ใ‚’ใ€ๆ•ฐ $i=1..N$ ใ‚’็ฝฎใ„ใŸ็Šถๆ…‹ใงใ€ $j = 0..(2^{2D+1}-1)$ ใฎใƒ“ใƒƒใƒˆใƒžใƒƒใƒ—ใง่กจ็พใ™ใ‚‹ไฝ็ฝฎใซไฝ•ใ‚‰ใ‹ๆ•ฐใ‚’้…็ฝฎๆธˆใงใ‚ใ‚‹ใจใใฎใ€็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใจใ™ใ‚‹ใ€‚ $W = 2^{D+1} - 1$ ใจใ—ใฆใ€ๅˆๆœŸๅ€คใฏ $DP[0][] = 0, DP[0][W] = 1$ ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใฏ $i &lt; 1$ ใฎๆ•ฐใ‚’ๅฏ†ใซ้…็ฝฎใ—ใŸใจใ„ใ†ใƒ€ใƒŸใƒผใงใ‚ใ‚‹ใ€‚

$i$ ใซใคใ„ใฆไปฅไธ‹ใฎ้€šใ‚Šๅ‡ฆ็†ใ™ใ‚‹ใ€‚

$DP[i-1][j]$ ใซใคใ„ใฆใ€ $j$ ใฎใƒ“ใƒƒใƒˆ0ใŒ0ใชใ‚‰ใ€ $P_{i-d}$ ใ‚’ใ‚‚ใฏใ‚„ๅŸ‹ใ‚ใ‚‹ใ“ใจใฏใงใใชใ„ใฎใง็„ก่ฆ–ใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ $j$ ใ‚’ๅทฆใซ1ๅ›žใ‚ทใƒ•ใƒˆใ—ใŸๆ•ฐใ‚’ไปฅๅพŒ $j$ ใจใ—ใฆ่€ƒใˆใ‚‹ใ€‚ใ“ใ‚Œใฏใ‚นใƒฉใ‚คใƒ‡ใ‚ฃใƒณใ‚ฐใ‚ฆใ‚ฃใƒณใƒ‰ใ‚ฆใ‚’1ๅ€‹ใšใ‚‰ใ™ใ“ใจใซ็›ธๅฝ“ใ™ใ‚‹ใ€‚

ๆ—ข่ฟฐใฎ้€šใ‚Šใ€ ๆ•ฐ $i$ ใ‚’็ฝฎใ‘ใ‚‹ๅ ดๆ‰€ใฏ $k = max(1,i-d)..min(N,i+d)$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใ‚’ไธ€้€šใ‚Š่ฉฆใ™ใ€‚

  • $A_k$ ใŒ้ž่ฒ ใชใ‚‰ใ€็ฝฎใ‘ใ‚‹ๆ•ฐใฏ $A_k$ ใฎใฟใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $A_k = i$ ไปฅๅค–ใชใ‚‰็„ก่ฆ–ใ™ใ‚‹
  • $j$ ใฎ $t = k - (i - D)$ ใƒ“ใƒƒใƒˆ็›ฎใŒ็ซ‹ใฃใฆใ„ใŸใ‚‰ใ€ไป–ใฎๆ•ฐใŒ็ฝฎใ‹ใ‚Œใฆใ„ใ‚‹ใฎใง็„ก่ฆ–ใ™ใ‚‹
  • ใใ†ใงใชใ‘ใ‚Œใฐ $i$ ใ‚’็ฝฎใใ€ $DP[i][j \oplus 2^{t}]$ ใซ $DP[i-1][j]$ ใ‚’ๅŠ ็ฎ—ใ™ใ‚‹

$DP[N][W]$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 133-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่พžๆ›ธ้ †ใชใฎใงๅ…ˆ้ ญใŒ้‡่ฆใ€‚

ไฝ•ๅ€‹้™คใใ‹ใฏ้–ขไฟ‚ใชใ„ใ€‚ๅ…ˆ้ ญใฎ่ฆ็ด ใ‚’้™คใ„ใŸใ‚‰่พžๆ›ธ้ †ใŒไธ‹ใŒใ‚‹ใ‹ใฉใ†ใ‹ใ ใ‘่ˆˆๅ‘ณใŒใ‚ใ‚‹ใ€‚ใชใฎใง $A$ ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰่ฆ‹ใฆ่กŒใฃใฆใ€ไปŠใฎ่ฆ็ด ใ‚ˆใ‚Šๆฌกใฎ่ฆ็ด ใฎๆ–นใŒๅฐใ•ใ‘ใ‚Œใฐใ€ไปŠใฎ่ฆ็ด ใ‚’้™คใใจ่พžๆ›ธ้ †ใŒไธ‹ใŒใ‚‹ใ€‚ใใฎใ‚ˆใ†ใชๆœ€ๅˆใฎ่ฆ็ด ใ‚’่ฆ‹ใคใ‘ใ€ใใฎใ‚ˆใ†ใช่ฆ็ด ใŒ่ฆ‹ใคใ‹ใ‚‰ใชใ„( $A$ ใŒๅบƒ็พฉ็Ÿญ่ชฟๅข—ๅŠ )ใชใ‚‰ๆœ€ๅพŒใฎ่ฆ็ด ใ‚’ๅ‰Š้™คใ™ใ‚‹ใ€‚

ๅ‰Š้™คใ—ใŸ่ฆ็ด  $x$ ใจๅŒใ˜ๅ€คใฏๆ•ดๆ•ฐๅˆ—ใ‹ใ‚‰ใ™ในใฆ้™คใใฎใจใ€ๅ…ฅๅŠ›ไพ‹2ใฎใ‚ˆใ†ใซ $x$ ใ‚’้™คใ„ใŸใ‚‰ $A$ ใŒ็ฉบใซใชใ‚‹ใ“ใจใŒใ‚ใ‚‹ใฎใซๆณจๆ„ใ™ใ‚‹ใ€‚

ARC 133-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ARC 126-Bใใฎใพใพใ‹ใจๆ€ใฃใŸใ‚‰ใ€ๆœฌๅฝ“ใซใใฎใพใพใ ใฃใŸใ€‚

$Q$ ใฎๅ„่ฆ็ด ใ‹ใ‚‰ $P$ ใฎๅ„่ฆ็ด ใซๆœ‰ๅ‘่พบใ‚’ๅผตใ‚‹ใ€‚่พบใฎๆ•ฐใฏ่ชฟๅ’Œ็ดšๆ•ฐใชใฎใง $Nlog(N)$ ใงใ‚ใ‚‹ใ€‚ๅพŒใฏARC 126-BใจๅŒใ˜ใใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใงLISใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ lower_bound ใ‚’ไฝฟใฃใฆๆœ€้•ท้ƒจๅˆ†ๅข—ๅŠ ๅˆ—ใ‚’ๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚

ARC 133-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฝ“ใฆใšใฃใฝใ†ใŒ้€šใฃใฆใ—ใพใฃใŸใ€‚

$A$ ใฎๅ’Œใ‚‚ $B$ ใฎๅ’Œใ‚‚ใ€ใ™ในใฆใฎใƒžใ‚นใฎๅ’Œใ‚’ $modK$ ใ—ใŸใ‚‚ใฎใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $A$ ใฎๅ’Œใจ $B$ ใฎๅ’ŒใŒ็•ฐใชใ‚Œใฐ่งฃใชใ—( -1 ใงใ‚ใ‚‹)ใ€‚ไปฅไธ‹ๅ’ŒใŒ็ญ‰ใ—ใ„ใจใใฎ่งฃใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ใ™ในใฆใฎใƒžใ‚นใŒ $K-1$ ใงใ‚ใ‚‹ใจๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใ€‚ใ“ใฎใจใใ™ในใฆใฎใƒžใ‚นใฎๅ’Œใฏ $HW(K-1)$ ใงใ‚ใ‚‹

ๆฑบใ‚ๆ‰“ใกใŒๅฝ“ใŸใฃใฆใ„ใ‚Œใฐใ€่กŒใฎๅ’Œใฏ $SR_i = W(K-1) mod K$ ใงใ‚ใ‚‹ใ€‚ๅฎŸ้š›ใซใฏ่กŒ $i$ ใฎๅ’Œ $modK$ ใฏ $A_i$ ใชใฎใงไปฅไธ‹ใฎ $DR_i$ ใ ใ‘่ชฟๆ•ดใ™ใ‚‹ใ€‚

  • $A_i \geq SR_i$ ใชใ‚‰ใ€่กŒ $i$ ใ‹ใ‚‰ $DR_i = A_i - SR_i$ ๅผ•ใ
  • $A_i &lt; SR_i$ ใชใ‚‰ใ€่กŒ $i$ ใ‹ใ‚‰ $DR_i = A_i + K - SR_i$ ๅผ•ใ

ๅŒๆง˜ใฎๅˆ—ใฎๅ’Œใฏ $SC_i = H(K-1) mod K$ ใงใ‚ใ‚‹ใ€‚ๅฎŸ้š›ใซใฏๅˆ— $i$ ใฎๅ’Œ $modK$ ใฏ $B_i$ ใชใฎใงไปฅไธ‹ใฎ $DC_i$ ใ ใ‘่ชฟๆ•ดใ™ใ‚‹ใ€‚

  • $B_i \geq SC_i$ ใชใ‚‰ใ€่กŒ $i$ ใ‹ใ‚‰ $DC_i = B_i - SC_i$ ๅผ•ใ
  • $B_i &lt; SC_i$ ใชใ‚‰ใ€่กŒ $i$ ใ‹ใ‚‰ $DC_i = B_i + K - SC_i$ ๅผ•ใ

่กŒใจๅˆ—ใฎๅคšใ่ชฟๆ•ดใ™ใ‚‹ๆ–นใ‚’ๆŽก็”จใ—ใ€็ญ”ใˆใฏ $HW(K-1) - max(\sum DR, \sum DC)$ ใงใ‚ใ‚‹ใ€‚่กŒใจๅˆ—ใฎๅฐ‘ใชใ่ชฟๆ•ดใ™ใ‚‹ๆ–นใฏ็ตๆžœ็š„ใซไธŠๆ‰‹ใใ„ใใฏใšใ ใŒใ€ใ“ใฎใ“ใจใ‚’่จผๆ˜Žใ›ใšใซACใ—ใฆใ—ใพใฃใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใซใฏ่ชฟๆ•ดๆ–นๆณ•ใŒ่ผ‰ใฃใฆใ„ใ‚‹ใ€‚

ARC 134-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅฐบๅ–ใ‚Šๆณ•

ๅฆ‚ไฝ•ใซใ‚‚ๅฐบๅ–ใ‚Šๆณ•ใงใ‚ใ‚‹ใ€‚่ฒชๆฌฒๆณ•ใง่งฃใใŸใ‚ใซใ€ใ‚ทใƒผใƒˆใ‚’ๅทฆ็ซฏใ‹ใ‚‰้ †ใซไธฆในใ‚‹ใ€‚ใ“ใฎใจใใ‚ทใƒผใƒˆ $[L,L+1]$ ใ‚’ใ‚ปใƒณใƒใƒใƒซใจใ—ใฆ่ฟฝๅŠ ใ—ใฆใŠใใจๅณ็ซฏใฎๅ‡ฆ็†ใŒๆฅฝใซใชใ‚‹ใ€‚

ใ‚ทใƒผใƒˆใง่ฆ†ใ‚ใ‚Œใฆใ„ใชใ„้ƒจๅˆ†ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏๆ—ขใซใ‚ทใƒผใƒˆใง่ฆ†ใฃใŸใจๅˆ†ใ‹ใฃใฆใ„ใ‚‹ๅบงๆจ™ $right$ (ๅˆๆœŸๅ€ค0)ใจใ€ใ‚ทใƒผใƒˆ $[x,x+W]$ ใ‚’ๆฏ”ในใฆใ€ $right &lt; x$ ใชใ‚‰ $[right,x]$ ใŒใ‚ทใƒผใƒˆใง่ฆ†ใ‚ใ‚Œใฆใ„ใชใ„้š™้–“ใจๅˆ†ใ‹ใ‚‹ใ€‚ใ“ใฎใ‚ใจ $right$ ใ‚’ $max(right,x+W)$ ใงๆ›ดๆ–ฐใ™ใ‚‹ใ€‚ใ™ในใฆใฎใ‚ทใƒผใƒˆใง่ขซใฃใŸใ‚‰้š™้–“ใ‚’ๅทฆ็ซฏใ‹ใ‚‰้ †ใซไธฆในใ‚‹ใ€‚

ๆœ€ๅพŒใซใ‚ทใƒผใƒˆใง่ฆ†ใ‚ใ‚Œใฆใ„ใชใ„้ƒจๅˆ†ใ‚’ใ‚ทใƒผใƒˆใง่ขซใ†ใ€‚ใ‚ทใƒผใƒˆใง่ฆ†ใฃใŸใจๅˆ†ใ‹ใฃใฆใ„ใ‚‹ๅบงๆจ™ $right$ (ๅˆๆœŸๅ€ค0)ใจใ€ใ‚ทใƒผใƒˆใง่ฆ†ใ‚ใ‚Œใฆใ„ใชใ„้š™้–“ $[l,r]$ ใ‚’ๆฏ”ในใฆใ€ $right$ ใ‚’ $max(right,l)$ ใงๆ›ดๆ–ฐใ—ใฆใ‹ใ‚‰ $m=max(0, \lceil (r - right)/W \rceil)$ ๆžšใฎใ‚ทใƒผใƒˆใง่ขซใ†ใ€‚ใ“ใฎๅพŒ $right$ ใ‚’ $mW$ ๅข—ใ‚„ใ™ใ€‚

่งฃ่ชฌใ‚’ใ‚ˆใ่ชญใ‚€ใจใ€้š™้–“ใฎๆฌกใฏๅฐ‘ใชใใจใ‚‚้•ทใ• $W$ ใฎใ‚ทใƒผใƒˆใง่ฆ†ใ‚ใ‚Œใฆใ„ใ‚‹ใฎใงใ€ใใ‚Œใžใ‚ŒใฎๅŒบ้–“ใ‚’็‹ฌ็ซ‹ใซ่€ƒใˆใฆใ‚ˆใ‹ใฃใŸใ€‚ไธŠ่จ˜ใฎ่งฃใฏๅ‡ใ‚Š้ŽใŽใงใ‚ใ‚‹ใ€‚ๅฎŸ่ฃ…ใ‚’็ฐก็•ฅๅŒ–ใ™ใ‚‹ใจ ใ“ใกใ‚‰ ใซใชใ‚‹ใ€‚

ARC 134-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ†ใณๅฐบๅ–ใ‚Šๆณ•

ๅทฆ็ซฏ $L=1$, ๅณ $R=N$ ใ‹ใ‚‰ๅฐบๅ–ใ‚Šๆณ•ใง็ธฎใ‚ใฆใ€ๅ…ฅใ‚Œๆ›ฟใˆใ‚‰ใ‚Œใ‚‹ๆ–‡ๅญ—ๅˆ—ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ„ใ‘ใฐใ‚ˆใ„ใ€‚

ๆœ€ๅˆใซ $S$ ใฎใใ‚Œใžใ‚Œใฎๆ–‡ๅญ—ใซใคใ„ใฆใ€ $a..z$ ใ‚’ $0..25$ ใจ่ชญใฟๆ›ฟใˆใ€ใใ‚Œใžใ‚Œใฎๅ‡บ็พไฝ็ฝฎ $1..N$ ใ‚’้ †ๅบไป˜ใ้›†ๅˆ std::vector<std::set<Num>> ใงๆŒใคใ€‚

$S$ ใฎ $L$ ๆ–‡ๅญ—็›ฎใŒ $c$ ใฎใจใใ€ $(l,R]$ ๆ–‡ๅญ—็›ฎใซ $c$ ใ‚ˆใ‚Šๅฐใ•ใชๆ–‡ๅญ—ใŒใ‚ใ‚Œใฐๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ไพกๅ€คใŒใ‚ใ‚‹ใ€‚ $d=0..(c-1)$ ใฎ้ †ใซใ€ $(l,R]$ ๆ–‡ๅญ—็›ฎใซๅ‡บ็พใ™ใ‚‹ใ‹ใฉใ†่ชฟในใ‚‹ใ€‚ๅ‡บ็พใ™ใ‚‹ๆœ€ใ‚‚ๅฐใ•ใ„ $d$ ใฎใ†ใกใ€ $(l,R]$ ใงๆœ€ใ‚‚ๅคงใใช(ๅณใซใ‚ใ‚‹)ไฝ็ฝฎใ‚’ $P$ ใจใ™ใ‚‹ใ€‚

  • ใใฎใ‚ˆใ†ใช $d$ ใŒใ‚ใ‚Œใฐ $S$ ใฎ $L$ ๆ–‡ๅญ—็›ฎใจ $P$ ๆ–‡ๅญ—็›ฎใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ€‚ $L$ ใ‚’1ๅข—ใ‚„ใ—ใ€ $R$ ใ‚’1ๆธ›ใ‚‰ใ™ใ€‚
  • ใใฎใ‚ˆใ†ใช $d$ ใŒใชใ‘ใ‚Œใฐใ€ $L$ ใ‚’1ๅข—ใ‚„ใ™ใ€‚ $R$ ใฏๆธ›ใ‚‰ใ•ใชใ„

$L \geq R$ ใซใชใ‚‹ใพใง $S$ ใ‚’ๆ›ดๆ–ฐใ—ใฆๅพ—ใ‚‰ใ‚Œใ‚‹ๆ–‡ๅญ—ๅˆ—ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 134-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

133-Cใจใฏ็•ฐใชใ‚Šใ€ๆญฃๆ”ปๆณ•ใง่งฃใ„ใŸใ€‚

$a_i$ ใซๅˆถ็ด„ใŒๅฆ‚ไฝ•ใซใ‚‚ๅŽณใ—ใใ€ $K$ ใ‚’ๅˆถ็ด„ใซใ—ใชใ„ใจ่งฃใ‘ใชใ•ใใ†ใงใ‚ใ‚‹ใ€‚ใใ‚Œใžใ‚Œใฎใƒœใƒผใƒซใ‚’็‹ฌ็ซ‹ใซ้…็ฝฎใ™ใ‚‹ๆ–นๆณ•ใ‚’ๆฑ‚ใ‚ใฆใใฎ็ฉใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰ใฉใฎใ‚ˆใ†ใซใƒœใƒผใƒซใ‚’้…็ฝฎใ™ใ‚‹ใซใ›ใ‚ˆใ€ไปฅไธ‹ใฎใ‚„ใ‚Šๆ–นใง้ŽๅŠๆ•ฐใ‚’็ฒใ‚Œใ‚‹ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

  • ใใ‚Œใžใ‚Œใฎ็ฎฑใซใฏใ€ๅฐ‘ใชใใจใ‚‚1ไปฅๅค–ใจๆ›ธใ‹ใ‚ŒใŸใƒœใƒผใƒซใฎๆ•ฐใ ใ‘ใ€1ใจๆ›ธใ‹ใ‚ŒใŸใƒœใƒผใƒซใ‚’ๅ…ฅใ‚Œใ‚‹
  • ้ŽๅŠๆ•ฐใ‚’็ฒๅพ—ใ™ใ‚‹ใซใฏใ€ใใ‚Œใžใ‚Œใฎ็ฎฑใซ1ใจๆ›ธใ‹ใ‚ŒใŸใƒœใƒผใƒซใ‚’1ใคใšใคๅ…ฅใ‚Œใ‚‹
  • ใใ‚ŒไปฅไธŠใƒœใƒผใƒซ1ใ‚’ๅ…ฅใ‚Œใ‚‹ใ‹ใฉใ†ใ‹ไปปๆ„(ใ™ใงใซ้ŽๅŠๆ•ฐใชใฎใง)

้ŽๅŠๆ•ฐใ‚’็ฒใฃใŸๅพŒใฎไฝ™ใฃใŸใƒœใƒผใƒซใ‚’ $R = a_1 - K - \sum_{i=2}^N a_i$ ๅ€‹ใจใ™ใ‚‹ใ€‚ $R &lt; 0$ ใชใ‚‰้ŽๅŠๆ•ฐใ‚’็ฒใ‚Œใชใ„ใฎใง็ญ”ใˆใฏ0้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใ„ใจใใ€ไปฅไธ‹ใฎใ‚ˆใ†ใซใƒœใƒผใƒซใ‚’้…ใ‚Šใ€ใใ‚Œใžใ‚Œใฎใƒœใƒผใƒซใฎ้…็ฝฎใฎ็ต„ใฟๅˆใ‚ใ›ใฎ็ฉใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใ“ใ“ใง $a_i$ ๅ€‹ใฎใƒœใƒผใƒซใ€ $K-1$ ใฎไป•ๅˆ‡ใ‚Šใ€ใƒœใƒผใƒซใ‚‚ไป•ๅˆ‡ใ‚Šใ‚‚ๅŒบๅˆฅใงใใชใ„ใจใใฎ็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใงใ‚ใ‚‹ใ€‚

  • ใƒœใƒผใƒซ $1$ ใฎ้…็ฝฎใฏ ใซใคใ„ใฆ $R + K - 1 \choose k$ ้€šใ‚Š
  • ใƒœใƒผใƒซ $i=2..N$ ใฎ้…็ฝฎใฏใ€ $a_i + K - 1 \choose k$ ้€šใ‚Š

$K!$ ใฏไธ€ๅบฆใ ใ‘ๆฑ‚ใ‚ใฆใŠใใ€‚็นฐใ‚Š่ฟ”ใ—ๆฑ‚ใ‚ใ‚‹ใจ้€†ๅ…ƒใ‚’ๆฑ‚ใ‚ใ‚‹ใฎใŒ้‡ใ„ใฎใงTLEใ™ใ‚‹ใ€‚

ARC 135-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒกใƒขๅŒ–

$X &lt; 4$ ใชใ‚‰ๆ“ไฝœใ™ใ‚‹ใจ็ฉใŒๆธ›ใฃใฆใ—ใพใ†ใ€‚ใใ†ใงใชใ„ใชใ‚‰ๆ“ไฝœใ™ใ‚‹ใ€‚ใ‚ใจใฏใƒกใƒขๅŒ–ๅ†ๅธฐใง่งฃใ‘ใ‚‹(ใƒกใƒขๅŒ–ใ—ใชใ„ใจTLEใ™ใ‚‹)ใ€‚

ARC 135-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒใƒ†ใƒณใ‚ทใƒฃใƒซใ‚’ใ„ใ„ๆ„Ÿใ˜ใซ่ชฟๆ•ดใ™ใ‚‹ใ€‚

$D_{i} = S_{i+1} - S_{i} = A_{i+3} - A_{i}$ ใฏใ€ $D_{i}$ ใฏ $i$ ใ‚’3ๅ€‹้ฃ›ใฐใ—ใคใพใ‚Š $i MOD 3$ ใง่€ƒใˆใŸๆ™‚ใฎใ€ $D_{i}$ ใฎใƒใƒ†ใƒณใ‚ทใƒฃใƒซ $P_{i}$ ใฎๅทฎใ‚’่กจ็พใ—ใฆใ„ใ‚‹ใ€‚ $P_{i+3} = P_{i} + D_{i}$ ใชใฎใง้€ๆฌก็š„ใซๆฑ‚ใ‚ใ‚‹ใ€‚

$P_{0}$ ใ‚’ไปฎใซ0ใจใ—ใ€ $min(P_{3i})$ ใฎๆœ€ๅฐๅ€ค(0ไปฅไธ‹)ใ‚’ๅผ•ใ„ใฆใƒใƒ†ใƒณใ‚ทใƒฃใƒซใฎๆœ€ไฝŽๅ€คใ‚’0ใซใ™ใ‚‹ใ€‚ $min(A_{3i+1})$ , $min(A_{3i+2})$ ใ‚‚ๅŒๆง˜ใซใ™ใ‚‹ใ€‚

$A_{0} = S_{0} - P_{0} - P_{1} - P_{2}, A_{1} = P_{1}, A_{2} = P_{2}$ ใจ็ฝฎใใ€‚ ๅŒๆง˜ใซ $A_{i} = S_{i} - P_{i-1} - P_{i-2} : i \geq 3$ ใจ้€ๆฌก็š„ใซๆฑ‚ใ‚ใ‚‹ใ€‚ $\forall i A_i \geq 0$ ใชใ‚‰ใใ‚ŒใŒ็ญ”ใˆใฎไธ€ใคใ€ใใ†ใงใชใ‘ใ‚Œใฐ่งฃใชใ—ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฎๅฐŽๅ‡บใฏใ™ใฃใใ‚Šใ—ใฆใ„ใ‚‹ใ€‚

ARC 135-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็ตๅฑ€ใฉใ†ใ—ใฆใ„ใ„ใ‹ๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

่ชค็ญ”ใฏ $A$ ใฎใƒ“ใƒƒใƒˆ $i$ ใซใคใ„ใฆ1ใซใชใ‚‹ $A$ ใฎ่ฆ็ด ใŒ0ใ‚ˆใ‚Šๅคšใ‘ใ‚Œใฐ1ใซใชใ‚‹ $A$ ใฎ่ฆ็ด ใ‚’้ธใณใ€0ใซใชใ‚‹ใ‚‚ใฎใŒ1ใ‚ˆใ‚Šๅคšใ‘ใ‚Œใฐ0ใ‚’้ธใณใ€ใใ†ใงใชใ‘ใ‚Œใฐไธกๆ–น้ธใถใ€ใจใ„ใ†ใ‚‚ใฎใงใ‚ใ‚‹ใ€‚ใ“ใฎๆ–นๆณ•ใฏanti_greedyใ‚ฑใƒผใ‚นใŒๅ…จๆป…ใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ไปปๆ„ใฎ $i,j$ ใซใคใ„ใฆใ€ $A_i \oplus A_j$ ใŒไธๅค‰้‡ใงใ‚ใ‚‹ใ€‚ใจใซใ‹ใไธๅค‰้‡ๅ•้กŒใฏใใ†ใจ่ฆ‹ๆŠœใใฎใŒ้›ฃใ—ใ„ใ€‚

่งฃ่ชฌใ‚’่ชญใฟ่งฃใใจใ€2ๅ›žๆ“ไฝœใ™ใ‚‹ใจๅ…ƒใซๆˆปใ‚‹ $A_1 \oplus (A_1 \oplus A_2) \oplus A_3 = A_2 \oplus A_3$ ใฎใงใ€ๆ“ไฝœใฏ0ใพใŸใฏ1ๅ›žใ ใ‘่€ƒใˆใ‚Œใฐใ‚ˆใ„ใจใ‚ใ‹ใ‚‹ใ€‚

ARC 136-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใƒ•ใ‚งใƒณใ‚นใ€‚

C ใซๅฏพใ™ใ‚‹ๆ“ไฝœใฏไฝ•ใ‚‚ใงใใชใ„ใฎใงใ€ C ใฏ A,B ใซๅฏพใ™ใ‚‹ไธ€้€ฃใฎๆ“ไฝœใฎๅŒบๅˆ‡ใ‚Šๆ–‡ๅญ—ใซใชใ‚‹ใ€‚ใ‚ˆใฃใฆ้€ฃ็ถšใ™ใ‚‹ A,B ใ‚’ใฉใ†ใ™ใ‚‹ใ‹่€ƒใˆใ‚‹ใ€‚

$a$ ๅ€‹ใฎ A, $b$ ๅ€‹ใฎ B ใ‹ใ‚‰ใชใ‚‹ A ใพใŸใฏ B ใ ใ‘ใ‹ใ‚‰ใชใ‚‹ๆ–‡ๅญ—ๅˆ—ใŒใ‚ใ‚‹ใจใ™ใ‚‹ใ€‚ AA,AB ใฏไฝ•ใ‚‚ใ—ใชใ„ใ€‚ BA ใฏ BBB ใ‚’็ตŒใฆ AB ใซใ™ใ‚‹ใ€ BB ใฏ BBBB ใ‚’็ตŒใฆ AA ใซใ™ใ‚‹ใ€‚ใ‚ˆใฃใฆ $\lfloor B/2 \rfloor$ ๅ€‹ใฎ B ใ‚’ A ใซ็ฝฎใๆ›ใˆใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚็ฝฎใๆ›ใˆใ‚‰ใ‚Œใชใ‹ใฃใŸ้ซ˜ใ€…1ๅ€‹ใฎ B ใ‚’ๆœ€ๅพŒใซๆŒใฃใฆใใ‚Œใฐ่พžๆ›ธ้ †ใงๆœ€ๅฐใซใชใ‚‹ใ€‚

ใ‚ใจใฏไธŠ่จ˜ใฎๆ“ไฝœๅพŒใฎ A ใพใŸใฏ B ใ ใ‘ใ‹ใ‚‰ใชใ‚‹ๆ–‡ๅญ—ๅˆ—ใจ C ใ‚’้ †ใซๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ARC 136-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไบŒๆ—ฅ้–“่€ƒใˆใฆๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚่ปขๅ€’ๆ•ฐใ ใจๆ€ใฃใŸใŒใ€ใใฎๅพŒใฉใ†ใ—ใฆใ„ใ„ใ‹ๅˆ†ใ‹ใ‚‰ใš4 WAsใง็ต‚ใ‚ใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌ้€šใ‚Šใ€่ปขๅ€’ๆ•ฐใฎๅถๅฅ‡ใŒไธๅค‰้‡ใงใ‚ใ‚‹ใ€‚ใ“ใ‚ŒใซๅŠ ใˆใฆใ€ๅŒๅ€คใซใคใ„ใฆใฏไฝ็ฝฎใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใŸใจใฟใชใ™ใจ่ปขๅ€’ๆ•ฐใฎๅถๅฅ‡ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‰ใ‚Œใ‚‹ใ€‚

ARC 137-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่ŒถdiffใŒไธ€ๆ™‚้–“

FizzBuzzใงใ‚ใ‚‹ใ€‚ $GCD(L,R)=1$ ใชใ‚‰็ญ”ใˆใฏ $R-L$ ใงใ‚ใ‚‹ใ€‚ใชใฎใงใใ‚Œใ‚ˆใ‚Šๅฐใ•ใช็ญ”ใˆใชใ‚‰ๆŽขใ—ใซ่กŒใใ€‚

$GCD(L,R) &gt; 1$ ใชใฎใงใ€ $L &lt; i &lt; R$ ใชใ‚‹ $i$ ใŒใ‚ใฃใฆใ€ $i$ ใฏ $GCD(L,R)$ ใฎๆ•ดๆ•ฐๅ€ใงใชใ„ๆ•ฐใŒๅญ˜ๅœจใ™ใ‚‹ใ€‚ $R$ ใŒ $L$ ใฎๆ•ดๆ•ฐๅ€ใชใ‚‰ใ€ $GCD(L,R-1)=1$ ใงใ‚ใ‚Š็ญ”ใˆใฏ $R-L-1$ ใงใ‚ใ‚‹ใ€‚

ใใ†ใงใชใ‘ใ‚Œใฐ $i$ ใฏ $GCD(L,R)$ ใฎๅ€ๆ•ฐใงใฏใชใ $L$ ใฎ็ด ๅ› ๆ•ฐ $l$ ใฎๆ•ดๆ•ฐๅ€ใงใ‚‚ใชใ $R$ ใฎ็ด ๅ› ๆ•ฐ $r$ ใฎๆ•ดๆ•ฐๅ€ใงใ‚‚ใชใ„ $i$ ใŒๅญ˜ๅœจใ™ใ‚‹ใ€‚ใ“ใ“ใง $l,r$ ใฏไบ’ใ„ใซ็ด ใงใ‚ใ‚‹(ใใ†ใงใชใ„ใชใ‚‰ $GCD(L,R)$ ใฎๅฎš็พฉใซๅใ™ใ‚‹)ใ€‚ใ“ใฎใจใ $i=L,L+1,L+2,L+3,L+4$ ใ‚’ๆŽขใ™ใจ $l$ ใฎๅ€ๆ•ฐใงใ‚‚ $r$ ใฎๅ€ๆ•ฐใงใ‚‚ใชใ„ๆ•ดๆ•ฐใŒ5ๅ€‹้€ฃ็ถšใ™ใ‚‹ใ“ใจใฏใชใ„ใ€‚ใ“ใ‚Œใฏ $(l,r)=(2,3)$ ใ‚’่€ƒใˆใ‚Œใฐๅˆ†ใ‹ใ‚Šใ€ $l$ ใพใŸใฏ $r$ ใŒๅคงใใ‘ใ‚Œใฐใ‚‚ใฃใจ้š™้–“ใŒ็ฉบใใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚็ฐกๅ˜่จ€ใ†ใจใ€ๅทฎใŒ2ใฎๅฅ‡ๆ•ฐใฎใฉใกใ‚‰ใ‹ใฏ็ฉบใ„ใฆใ„ใ‚‹ใจ่จ€ใˆใ‚‹ใ€‚ๅŒๆง˜ใฎใ“ใจใŒ $i=R-4,R-3,R-2,R-1,R$ ใซใคใ„ใฆ่จ€ใˆใ‚‹ใ€‚

ใชใฎใง $p=L..L+4$ ใจ $q=R-4..R$ ใฎ็ต„ใ‚’ๅ…จๆŽข็ดขใ—ใฆ $GCD(p,q)=1$ ใจใชใ‚‹ $q-p$ ใฎๆœ€ๅคงๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใ“ใ‚ŒใฏไธŠ่จ˜ใฎๅ ดๅˆๅˆ†ใ‘ใ‚’ใ™ในใฆๅซใ‚€ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šๅ…จๆŽข็ดขใงใ‚ˆใ‹ใฃใŸใฎใ ใŒใ€ $L,R$ ใงใฏใชใ $R-L$ ใ‚’ๅ…จๆŽข็ดขใ™ใ‚Œใฐใ‚ˆใ‹ใฃใŸใ€‚ใ“ใ“ใซๆฐ—ใŒไป˜ใ‹ใšใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใŸใ€‚้‰„ๅ‰‡ๆœฌC18ใ‚’่งฃใ‘ใชใ‹ใฃใŸใฎใ‚’ๆ€ใ„ๅ‡บใ™(็ซฏใงใฏใชใๅŒบ้–“ๅทฎใ‚’ไธ€ใคใšใคๅข—ใ‚„ใ™DP)ใ€‚ๅฎŸ่ฃ…ใฏ ใ“ใกใ‚‰ ใ€‚่จˆ็ฎ—้‡ใฎ่ฆ‹็ฉใ‚‚ใ‚ŠใŒ้›ฃใ—ใ„ใ€‚ACใงใใŸใฎใงไธŠ่จ˜ใฎ่ชฌๆ˜Žใฏๅˆใฃใฆใ„ใ‚‹ใฏใšใ ใŒใ€ $0..4$ ใฏ็Ÿญใ™ใŽใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

ARC 137-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆŠ˜ใ‚Œ็ทšใ‚ฐใƒฉใƒ•

$A_{1..N}$ ใ‚’ๅ่ปขใ—ใŸใจใใซ $A$ ใซๅซใพใ‚Œใ‚‹1ใŒใ„ใใคๅข—ใˆใ‚‹ใ‹ใ‚’ใ€็ดฏ็ฉๅ’Œ $C_{1..N}$ ใจใ—ใฆๆฑ‚ใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏ $A_i = 0$ ใชใ‚‰ $+1$ ใ€ใ“ใ‚Œใฏ $A_i = 1$ ใชใ‚‰ $-1$ ใจใ—ใฆ็ดฏ็ฉๅ’Œใ‚’ๅ–ใ‚‹ใ€‚

ใ“ใฎ็ดฏ็ฉๅ’Œ $C=(C_1,..,C_N)$ ใฎไธŠ้™ใจไธ‹้™ใ‚’ๅ–ใ‚‹ใ“ใจใงfใ€ $A$ ใฎ้€ฃ็ถš้ƒจๅˆ†ๅˆ— $R = [1, 1..N]$ ใ‚’ๅ่ปขใ•ใ›ใŸใจใ1ใฎๅ€‹ๆ•ฐใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ใŒใ€ไธŠ้™ใจไธ‹้™ใ‹ใ‚‰ๅˆ†ใ‹ใ‚‹ใ€‚ใคใพใ‚Š $max(max(C),0) - min(min(C),0) + 1$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ๅŒบ้–“ใฎๅทฆ็ซฏใ‚’ $[i, A_{i..N}] : i=2..N$ ใจๅค‰ใˆใŸใ„ใ€‚ใใ†ใ™ใ‚‹ใซใฏ $C$ ใ‹ใ‚‰ $C_i$ ใ‚’ๅ–ใ‚Š้™คใใ€ $C$ ๅ…จไฝ“ใซ $A_i = 1$ ใชใ‚‰ $+1$ ใ€ $A_i = 0$ ใชใ‚‰ $-1$ ใ‚’่ถณใ™ใ€‚ใ“ใ‚Œใฏ็ดฏ็ฉๅ’Œใฎ่ฆ็ด ใ‚’้™คใใ“ใจใซ็ญ‰ใ—ใ„ใ€‚ๆ˜Ž็คบ็š„ใซ $C$ ใซๅ€คใ‚’่ถณใ™ใจTLEใ™ใ‚‹ใฎใงใ€ใ„ใใค่ถณใ™ใ‹(ไธ‹้ง„ใ‚’ๅฑฅใ‹ใ›ใ‚‹ใ‹)ใ‚’ใ‚นใ‚ซใƒฉใƒผ้‡ $ofs += 2A_i - 1$ ใงๆŒใคใ€‚

ๅ„ $i$ ใซใคใ„ใฆ $max(ofs+max(C),0)$ , $min(ofs+min(C),0)$ ใ‚’ๆ›ดๆ–ฐใ™ใ‚Œใฐใ€ใ™ในใฆใฎ้€ฃ็ถš้ƒจๅˆ†ๅˆ—ใซใคใ„ใฆใ€1ใฎๅ€‹ๆ•ฐใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ใŒๅˆ†ใ‹ใ‚‹ใ€‚

ๅฎŸใฏไธ€็•ชๆœ€ๅˆใฎ็ดฏ็ฉๅ’Œใ ใ‘ใงใ‚ˆใ‹ใฃใŸใ€ใจใ„ใ†ใ“ใจใŒๅ…ฌๅผ่งฃ่ชฌใซๆ›ธใ„ใฆใ‚ใ‚‹ใ€‚

ARC 138-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

่จผๆ˜Žใงใใฆใชใ„ใฎใซACใงใใฆใ—ใพใฃใŸใ€‚

$A_{1..K}$ ใŒใ™ในใฆ $A_{(K+1)..N}$ ใ‚ˆใ‚Šๅคงใใ‘ใ‚Œใฐใ€ใ‚นใ‚ณใ‚ขใ‚’ไธŠใ’ใ‚‹ใ“ใจใฏใงใใชใ„ใฎใง -1 ใ‚’่ฟ”ใ™ใ€‚

ใใ†ใงใชใ‘ใ‚Œใฐ $A_{i} : i \in [K+1,N]$ ใฎๅ€คใ‚’ใ€ $A_i$ ใ‚ˆใ‚Šๅฐใ•ใ„ $A_j : j &lt; K$ ใจๅ…ฅใ‚Œๆ›ฟใˆใ‚Œใฐใ‚ˆใ„ใ€‚ใใฎใ‚ˆใ†ใช $i,j$ ใฎ็ต„ใฏ่ฆ‹ใคใ‹ใ‚‹ใฏใšใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $i = K+1..N$ ใฎ้ †ใซๆฑ‚ใ‚ใฆใ„ใใ€‚

$A_i$ ใ‚ˆใ‚Šๅฐใ•ใ„ $A_j : j &lt; K$ ใฎใ†ใกๆœ€ๅคงใฎ $j$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใซใฏใ€ $(A_i, -i)$ ใฎ็ต„ใ‚’ๆ˜‡้ †ใซใ‚ฝใƒผใƒˆใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ $i &lt; K$ ใชใ‚‰ๆ—ขๅ‡บใฎ $i$ ใŒๅ…ฅใฃใŸ้›†ๅˆ $S$ ใซใ„ใ‚Œใ€ $i \leq K$ ใชใ‚‰ $S$ ใฎๆœ€ๅคง่ฆ็ด ใŒๆฑ‚ใ‚ใŸใ„ $j$ ใงใ‚ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $(i,j)$ ใซใคใ„ใฆใ€ $j-i$ ใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใฉใ†ใ—ใฆ็ญ”ใˆใชใฎใ‹ใฏๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚€ใพใงๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸ( $i$ ใ‚’ $K$ ใซใ€ $j$ ใ‚’ $K-1$ ใซใ—ใฆ $K$ ใจ $K-1$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚Œใฐใ‚ˆใ„ใฎใ ใŒใ€ใใฎใ“ใจใ‚’ๆ€ใ„ใคใ‹ใชใ‹ใฃใŸ)ใ€‚

ARC 138-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๅ่ปขๅ›žๆ•ฐใ‚’ๆ•ฐใˆใ‚‹ใ€‚

ๅ…ˆ้ ญใฏๅฟ…ใš 0 ใชใฎใงใ€ๅ…ˆ้ ญใŒ 1 ใชใ‚‰ No ใ‚’่ฟ”ใ™ใ€‚

ๆ“ไฝœAใ‚’็นฐใ‚Š่ฟ”ใ™ใจใ€ 0101.. ใจใ€ๅ…ˆ้ ญใŒ 0 ใงใ€ 0 ใจ 1 ใŒไบคไบ’ใซ็นฐใ‚Š่ฟ”ใ•ใ‚Œใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใชๆœ€้•ทใฎๅˆ—ใฎ้•ทใ•ใŒใ€ๆ“ไฝœAใฎๅ›žๆ•ฐ $F$ ใงใ‚ใ‚‹ใ€‚ $F = N$ ใชใ‚‰ Yes ใ‚’่ฟ”ใ™ใ€‚

ๆฎ‹ใ‚Š $A_i : i &gt; F$ ใฎๆ•ฐๅˆ—ใซใคใ„ใฆ่€ƒใˆใ‚‹ใ€‚ไธŠ่จ˜ใฎๅˆ—ใง้€ฃ็ถšใ™ใ‚‹ 0 ใจ้€ฃ็ถšใ™ใ‚‹ 1 ใฎๅ€‹ๆ•ฐใฎๅ’Œ $L$ (ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นใงใ„ใ†ใƒฉใƒณใฎๅ€‹ๆ•ฐ)ใซ็€็›ฎใ™ใ‚‹ใ€‚ใŸใ ใ—ๆœซๅฐพใฎ้€ฃ็ถšใ™ใ‚‹ 0 ใฏๆ•ฐใˆใชใ„ใ€‚

  • $L \leq F$ ใชใ‚‰ใ€ๆ“ไฝœBใฎๅพŒใซๆ“ไฝœAใ‚’่กŒใ†ใ“ใจใงใ€ๆ“ไฝœBใงๆœซๅฐพใซ่ฟฝๅŠ ใ—ใŸ 0 ใ‚’ 1 ใซใ™ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ไธ็ญ‰ๅทใชใฎใฏใ€ๆ“ไฝœAใ‚’้€ฃ็ถšใ™ใ‚‹ใจไบŒๅบฆๅ่ปขใ—ใฆๅ…ƒใซๆˆปใ‚‹ใ‹ใ‚‰ใ€ๅคšใ„ๅˆ†ใซใฏๆง‹ใ‚ใชใ„ใ‹ใ‚‰ใ ใ€‚ Yes ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚
  • ๆ“ไฝœBใงๆœซๅฐพใซ่ฟฝๅŠ ใ—ใŸ 0 ใซใŸใ„ใ—ใฆใ€ $L &gt; F$ ใซใชใ‚‹ใ‚ˆใ†ใชๅคšใ™ใŽใ‚‹ๅ่ปขใฏใงใใชใ„ใ€‚ No ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’ใพใ ็†่งฃใงใใฆใ„ใพใ›ใ‚“ใ€‚

ARC 138-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆ‹ฌๅผงๅˆ—ใ ใจใ„ใ†ใ“ใจใฏใ™ใๅˆ†ใ‹ใฃใŸใŒใ€ไบŒๆ—ฅๆŽ›ใ‹ใฃใŸใ€‚

็ทฉๅ’Œๅ•้กŒใจใ—ใฆใ€ $A$ ใซใฏ้‡่ค‡ใŒใชใ„ใ‚‚ใฎใจใ™ใ‚‹ใ€‚ $A$ ใฎไธ‹ไฝ $N/2$ ๅ€‹ใซๅฑžใ™ใ‚‹ๆ•ฐใฎ้›†ๅˆใ‚’ $L$ ใ€ไธŠไฝ $N/2$ ๅ€‹ใซๅฑžใ™ใ‚‹ใฎ้›†ๅˆๆ•ฐใ‚’ $U$ ใจใ™ใ‚‹ใ€‚

ใ“ใ“ใงๆ‹ฌๅผงๅˆ—ใ‚’่€ƒใˆใ‚‹ใ€‚ $A_{i} \in L$ ใชใ‚‰ $i$ ๆ–‡ๅญ—็›ฎใ‚’ ( ใ€ $A_{i} \in U$ ใชใ‚‰ $i$ ๆ–‡ๅญ—็›ฎใ‚’ ) ใจใ™ใ‚‹ใ€‚ใ“ใฎใจใ $A_{1..N}$ ใŒๆ‹ฌๅผงๅˆ—ใ‚’ใชใ—ใฆใ„ใ‚‹ใชใ‚‰ใ€ใ™ใฌใ‘ๅ›ใฏ ) ใฎๆ•ฐใ‚’ๅ–ใ‚Šใ€ๆœ€ๅฐๅคช้ƒŽๅ›ใฏ ( ใ‚’ๅ–ใ‚‰ใ–ใ‚‹ใ‚’ๅพ—ใชใ„ใ€ใจใ„ใ†็Šถๆณใซ่ฟฝใ„่พผใ‚ใ‚‹ใ€‚ๅฎŸใฏใ“ใฎใ‚ˆใ†ใช็Šถๆณใฏๅฟ…ใšไฝœใ‚Œใฆใ€็ญ”ใˆ $s = \sum U$ ใงใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰ ()()..() ใจใ„ใ† () ใฎ็นฐใ‚Š่ฟ”ใ—ใฏๅธธใซๆง‹ๆˆๅฏ่ƒฝใงใ€ ( ใ‚’ๅทฆใซๅฏ„ใ›ใฆใ‚‚ใ™ใฌใ‘ๅ›ใŒๆœ‰ๅˆฉใซใชใ‚‹ใ ใ‘ใ ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

$k$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚้‡่ค‡ใ‚’่€ƒๆ…ฎใ—ใฆ1-based indexingใง $A$ ใฎไธ‹ใ‹ใ‚‰ $N/2$ ็•ช็›ฎใฎๆ•ฐใ‚’ $p$ ใจใ™ใ‚‹ใ€‚ $A_{1..N}$ ใซใคใ„ใฆใ€

  • $P_i = 1 if A_i &lt; p$
  • $P_i = 0 if A_i = p$
  • $P_i = -1 if A_i &gt; p$

ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ๆ‹ฌๅผงๅˆ—ใซๅฏพๅฟœใ•ใ›ใ‚‹ใจใ€ใ‚ใ‚‹ๅŒบ้–“ใซใŠใ„ใฆใ€((็ดฏ็ฉๅ’Œใฎๆœ€ๅฐๅ€ค)ใŒๆœ€ๅคง)ใซใชใ‚‹ใ‚ˆใ†ใช $k$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ‚’ไฝฟใ†ใจๆฑ‚ใพใ‚‹ใ€‚

  • $C[i=1..2N] = \sum_{j=1}^i P_i$ ใจใ™ใ‚‹
  • $T[i=1..2N]$ ใ‚’ๅŒบ้–“ๅŠ ็ฎ—ๆœ€ๅฐใ‚ปใ‚ฐๆœจใจใ—ใ€ๅˆๆœŸๅ€คใ‚’ $C$ ใจใ™ใ‚‹
  • ใ‚ใ‚‹ $i$ ใซใคใ„ใฆใฎๅ€ค ใฏใ€ $V_i = T[i,i+N) - C[i-1]$ ใงใ‚ใ‚‹

$V_k$ ใŒๆœ€ๅฐใจใชใ‚‹ใ‚ˆใ†ใช $k$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 139-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

็นฐไธŠใ‚Š

$i=1..N$ ใฎ้€”ไธญ็ตๆžœใ‚’ $A_i$ ใ€ใƒ“ใƒƒใƒˆใƒžใ‚นใ‚ฏ $m=A_i=2^{T_i}$ ใจใ—ใฆใ€ไปฅไธ‹ใ‚’็นฐใ‚Š่ฟ”ใ™ใจ่งฃใ‘ใ‚‹ใ€‚ๆœ€ๅˆใฏ $A_0=0$ ใจใ™ใ‚‹ใ€‚

  • $A_{i-1} &lt; m$ ใชใ‚‰ใ€ $A_{i}$ ใฎไธ‹ไฝ $m$ ใƒ“ใƒƒใƒˆใ‚’ใ™ในใฆ0ใซใ€ ใใฎไธ€ใคไธŠใฎใƒ“ใƒƒใƒˆใ ใ‘ใ‚’1ใซใ—ใฆ 10... ใจใ™ใ‚‹ใ€‚ใ‚ˆใ‚Šๆญฃ็ขบใซใฏ $A_{i}=m$ ใซใ™ใ‚‹ใ€‚
  • $A_{i-1} \geq m$ ใ‹ใค $A_{i-1} \land m = 0$ ใชใ‚‰ใ€ $A_{i}$ ใฎไธ‹ไฝใ‹ใ‚‰ $m$ ใƒ“ใƒƒใƒˆใ‚’ใ™ในใฆ0ใซใ€ ใใฎไธ€ใคไธŠใฎใƒ“ใƒƒใƒˆใ‚’1ใซใ€ไป–ใฏ $A_{i-1}$ ใจๅŒใ˜ใซใ—ใฆ ???10... ใจใ™ใ‚‹ใ€‚ใ‚ˆใ‚Šๆญฃ็ขบใซใฏ $A_{i}= \lfloor A_{i-1}/2m \rfloor \times 2m + m$ ใซใ™ใ‚‹ใ€‚
  • ไธŠ่จ˜ไปฅๅค–ใชใ‚‰ $A_{i}$ ใฎไธ‹ไฝใ‹ใ‚‰ $m$ ใƒ“ใƒƒใƒˆใ‚’ใ™ในใฆ0ใซใ€ ใใฎไธ€ใคไธŠใฎใƒ“ใƒƒใƒˆใ‚’1ใซใ€ใใฎไธ€ใคไธŠใฎใƒ“ใƒƒใƒˆใซ1ใ‚’่ถณใ—ใฆ (???+1)10... ใจใ™ใ‚‹ใ€‚ใ‚ˆใ‚Šๆญฃ็ขบใซใฏ $A_{i}= \lfloor (1+A_{i-1})/2m \rfloor \times 2m + m$ ใซใ™ใ‚‹ใ€‚

่งฃ่ชฌใฏใ‚‚ใฃใจๅ˜็ด”ใซๅ ดๅˆๅˆ†ใ‘ใ—ใฆใ„ใ‚‹ใ€‚

ARC 139-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไฝ•ๆ—ฅ่€ƒใˆใฆใ‚‚ๅˆ†ใ‹ใ‚‰ใšใ€้’diffใฎๅŽณใ—ใ•ใ‚’ๆ„Ÿใ˜ใ‚‹ใ€‚

$XN, X(N mod A) + Y \lfloor N/A \rfloor, X(N mod B) + Z \lfloor N/B \rfloor$ ใฎๆœ€ๅฐๅ€คใŒใพใšๆ€ใ„ๆตฎใ‹ใ‚“ใ ใ€‚ $A,B$ ใ‚’็ต„ใฟๅˆใ‚ใ›ใฆๆ‹กๅผตGCDใง $R= N mod GCD(A,B)$ ใ‚’ไฝœใ‚Šใ€ $N-R$ ใซใคใ„ใฆๅŒๆง˜ใซ่€ƒใˆใ‚Œใฐๆฎ‹ใ‚Šใ‚’็ถฒ็พ…ใงใใ‚‹ใ ใ‚ใ†ใ€ใจๆ€ใฃใŸใ‚‰ๅ…ฅๅŠ›ไพ‹ไปฅๅค–ใ™ในใฆWAใซใชใฃใŸใ€‚

ๆญฃ่งฃใฏ $X/1, Y/A, Z/B$ ใฎใŠๅพ—ๅบฆใ‚’ไฝฟใฃใฆๅนณๆ–นๅˆ†ๅ‰ฒใ ใฃใŸใ€‚ๅ…จใ่ฆ‹ๅฝ“ใŒใคใ‹ใชใ‹ใฃใŸใ€‚

ARC 140-A

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ไธ€ๅ€‹ใšใคใšใ‚‰ใ™ใ€‚

$N \leq 2000$ ใ‚ˆใ‚Šใ€ $T$ ใ‚’ $rot=1..N-1$ ๅ›ž่ปขใ—ใŸใ‚‚ใฎใซใคใ„ใฆ็ญ”ใˆใ‚’ๆฑ‚ใ‚ใฆใ€ใใฎๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ•ใใ†ใงใ‚ใ‚‹ใ€‚

$T$ ใฎ $i$ ๆ–‡ๅญ—็›ฎใ‚’0-based indexingใงๆ‰ฑใ†ใ€‚ๅทฆใซ $rot$ ๅ›ž่ปขใ—ใฆ $T_{rot}$ ใ‚’ไฝœใฃใŸๅ ดๅˆใ€ๅ›ž่ปขๅ‰ใฎ $T$ ใฎ $i$ ๆ–‡ๅญ—็›ฎใจ $(i + rot) modN$ ๆ–‡ๅญ—็›ฎใŒๅฏพๅฟœใ™ใ‚‹ใ€‚ใ‚ˆใฃใฆ $T$ ใฎ $(i + rot) modN$ ๆ–‡ๅญ—็›ฎใ‚’ๅค‰ๆ›ดใ—ใฆไธก่€…ไธ€่‡ดใ•ใ›ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚ใ™ใ‚‹ใจไปŠๅบฆใฏ $(i + rot) modN$ ๆ–‡ๅญ—็›ฎใจ $(i + 2rot) modN$ ๆ–‡ๅญ—็›ฎใŒๅฏพๅฟœใ•ใ›ใ‚‹ๅฟ…่ฆใŒๅ‡บใ‚‹ใ€‚ไปฅไธ‹ๅŒๆง˜ใซ็นฐใ‚Š่ฟ”ใ—ใฆใ€ใ„ใคใ‹ใฏ $i$ ๆ–‡ๅญ—็›ฎใซๆˆปใฃใฆใใ‚‹(้ณฉใฎๅทฃๅŽŸ็†ใ‚ˆใ‚Š)ใ€‚ใ“ใฎใƒซใƒผใƒ—ใซๅ‡บใฆใใ‚‹ๆ–‡ๅญ—ใฎ็จฎ้กžใจใ€ไฝ•ๆ–‡ๅญ—ๅ‡บใฆใใ‚‹ใ‹ใ‚’ๆ•ฐใˆใ‚‹ใ€‚

ไพ‹ใˆใฐ a ใŒ2ๆ–‡ๅญ—ใ€ b ใŒ1ๆ–‡ๅญ—ใ€ c ใŒ1ๆ–‡ๅญ—ใชใ‚‰ใ€ a ไปฅๅค–ใ‚’ a ใซใใ‚ใˆใ‚‹ใฎใŒใ€ๆœ€ใ‚‚ๆ–‡ๅญ—ใฎๅค‰ๆ›ดๅ›žๆ•ฐใŒๅฐ‘ใชใใฆๆธˆใ‚€ใ€‚ใคใพใ‚Šใƒซใƒผใƒ—ใฎ้•ทใ•ใ‹ใ‚‰ใ€ๆœ€ๅคšๅ‡บ็พๅ›žๆ•ฐไปฅๅค–ใฎๅ‡บ็พๅ›žๆ•ฐใฎๅˆ่จˆใ ใ‘ๆ–‡ๅญ—ใ‚’ๅค‰ๆ›ดใ™ใ‚‹ใจใ€ใƒซใƒผใƒ—ใซใคใ„ใฆๆ–‡ๅญ—ใ‚’ใใ‚ใˆใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚็‰นใซใƒซใƒผใƒ—ๅ†…ใฎๆ–‡ๅญ—ใŒใ™ในใฆๅŒใ˜ใชใ‚‰ๅค‰ๆ›ดๅ›žๆ•ฐใฏ0ใงใ‚ใ‚‹ใ€‚

ใ“ใ‚Œใ‚’ใ™ในใฆใฎใƒซใƒผใƒ—ใซใคใ„ใฆๆฑ‚ใ‚ใฆๅˆ่จˆใ—ใฆ $M$ ใจใ™ใ‚‹ใ€‚ $M &gt; K$ ใชใ‚‰้กŒๆ„ใ‚’ๆบ€ใŸใ•ใชใ„ใฎใง็„ก่ฆ–ใ™ใ‚‹ใ€‚ $M \leq K$ ใชใ‚‰้กŒๆ„ใ‚’ๆบ€ใŸใ™ๆ–‡ๅญ—ๅˆ—ใฎ็ฝฎๆ›ๆ–นๆณ•ใŒๅญ˜ๅœจใ™ใ‚‹ใ€‚ใ“ใฎใจใ $f(T_{rot})$ ใฏ $rot$ ใงใ‚ใ‚‹ใ€‚ใ‚‚ใ—ใ‚ใ‚‹ $rot$ ใซใคใ„ใฆ $f(T_{rot}) &lt; rot$ ใชใ‚‰็ญ‰ๅทใซใชใ‚‹ใ‚ˆใ†ใช $rot^{'}$ ใ‚’ๅˆฅใซ่ฆ‹ใคใ‘ใ‚‰ใ‹ใ‚‰่ฆ‹่ฝใจใ™ใ“ใจใฏ็„กใ„ใ€‚ใ“ใฎใ‚ˆใ†ใช $rot$ ใ‚’่ฆ‹ใคใ‘ใ‚‹ใ“ใจใŒใงใใชใ‘ใ‚Œใฐใ€็ญ”ใˆใฏ $N$ ใงใ‚ใ‚‹ใ€‚

ใƒซใƒผใƒ—ใ‚’ๆง‹ๆˆใ™ใ‚‹ใŸใ‚ใซใฏ $rot$ ใฏ $N$ ใฎ็ด„ๆ•ฐใงใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏใ“ใฎไบ‹ๅฎŸใ‹ใ‚‰ๅ‡บ็™บใ—ใฆใ„ใ‚‹ใ€‚ไป–ใฏๅ…ฌๅผ่งฃ่ชฌใจๅŒใ˜่งฃใๆ–นใงใ‚ใ‚‹ใ€‚

ARC 140-B

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ๆญฃ่ฆ่กจ็พๅˆ†ๅ‰ฒ

AARCC ใจใ„ใ†ๆ–‡ๅญ—ๅˆ—ใŒใ‚ใฃใŸใจใใ€ๅฅ‡ๆ•ฐๅ›ž็›ฎใฎๆ“ไฝœใงใฏ ARC ใซใ€ๅถๆ•ฐๅ›ž็›ฎใฎๆ“ไฝœใงใฏ AACC ใซใชใ‚‹ใ€‚ๅฅ‡ๆ•ฐๅ›ž็›ฎใฎๆ“ไฝœใงใฏ R ใฎๅ‰ๅพŒใซ $N$ ๅ€‹ใฎ A ใจ C ใŒใ‚ใ‚Œใฐ $N$ ๅ›žใงใใ‚‹ใ€‚ๅถๆ•ฐๅ›ž็›ฎใฎๆ“ไฝœใ‚’ใ—ใŸใ‚‰ใ€ใใฎๅพŒใฏใฉใ‚“ใชๆ“ไฝœใ‚‚ใงใใชใ„ใ€‚ใใฎใŸใ‚ๅถๆ•ฐๅ›ž็›ฎใฎๆ“ไฝœใ‚’ๅฆ‚ไฝ•ใซๅ…ˆๅปถใฐใ—ใ™ใ‚‹ใ‹่€ƒใˆใ‚‹ใ€‚

$S$ ใ‚’ๆญฃ่ฆ่กจ็พใง $A+RC+$ ใชๆ–‡ๅญ—ๅˆ—ใงๅˆ†ๅ‰ฒใ™ใ‚‹ใ€‚ๆญฃ่ฆ่กจ็พใ‚’ไฝฟใ‚ใšใซๆ–‡ๅญ—ๅˆ—ใ‚’ใ‚นใ‚ญใƒฃใƒณใ™ใ‚‹ใจไพ‹ๅค–ๅ‡ฆ็†ใŒใ‚„ใ‚„ใ“ใ—ใ„ใ€‚ใ“ใ†ใ—ใฆ้€ฃ็ถšๆ–‡ๅญ—ๅˆ— $L_1, ..., L_M$ใซๅˆ†ๅ‰ฒใ™ใ‚‹ใ€‚ $L_i$ ใŒ $a$ ๅ€‹ใฎ A, $r$ ๅ€‹ใฎ R, $c$ ๅ€‹ใฎ C ใ‹ใ‚‰ๆˆใ‚‹ใจใ™ใ‚‹ใ€‚ $a = 0 \lor r \ne 1 \lor c = 0$ ใชใ‚‰ $A+RC+$ ใงใฏใชใ„ใฎใง็„ก่ฆ–ใ—ใ€ๆญฃ่ฆ่กจ็พใซๅฝ“ใฆใฏใพใ‚‹้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใŒ $M$ ๅ€‹ใ‚ใ‚‹ใจใ™ใ‚‹ใ€‚

ใ‚ใ‚‹ $L$ ใซใคใ„ใฆใ€ๆ“ไฝœๅ›žๆ•ฐใซ $min(a,c) - 1$ ๅ›žใฎไฝ™่ฃ•ใŒใ‚ใ‚‹ใ€‚ไฝ™่ฃ•ๅ›žๆ•ฐใฎๅ’ŒใŒ $E$ ใจใ™ใ‚‹ใ€‚ ARC ใ‚’ AC ใซใ™ใ‚‹ใใ‚Œใžใ‚Œๆ“ไฝœใฎๅ‰ใซใ€ ARC ใ‚’ R ใซใ™ใ‚‹ๆ“ไฝœใ‚’ๅทฎใ—่พผใ‚€ใ“ใจใŒใงใใ‚‹ใ€‚ใ‚ˆใฃใฆๆœ€ๅคงใง $M + min(M,E)$ ๅ›žใฎๆ“ไฝœๅฏ่ƒฝใงใ‚ใ‚‹ใ€‚

Rubyใชใ‚‰ String#scan ใ‚’ไฝฟใฃใฆ็ฐกๆฝ”ใซ ๆ›ธใ‘ใ‚‹ ใ€‚ไปฅไธ‹ใซๅŸ‹ใ‚่พผใ‚ใ‚‹ใใ‚‰ใ„็Ÿญใ„ใ€‚

t = 0
e = 0
gets
gets.scan(/A+RC+/).each do |s|
  t += 1
  e += [s.count("A"), s.count("C")].min - 1
end
puts [t*2, t+e].min

ARC 140-C

ใ‚ณใƒผใƒ‰ใฏใ“ใกใ‚‰

ใ‚ธใ‚ฐใ‚ถใ‚ฐใชใฎใฏๅˆ†ใ‹ใฃใŸใŒใ€ๅง‹็‚นใ‹ใ‚‰ $1,2,3...$ ใจๅง‹ใ‚ใŸใฎใง็ญ”ใˆใŒๅˆใ‚ใชใ‹ใฃใŸใ€‚ๆญฃใ—ใใฏ็ต‚็‚นใ‹ใ‚‰ $(N-1)..1$ ใพใŸใฏ $(N-2)..1$ ใจใ™ใ‚‹ใ€‚

โš ๏ธ **GitHub.com Fallback** โš ๏ธ