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

AtCoder Regular Contest lessons learned 3

ABC 350็‚นๅ•้กŒใซๅฏพ็ญ–ใ™ใ‚‹ใŸใ‚ใ€ARCใ‚’่งฃใ„ใฆใฟใพใ™ใ€‚

ARC 141-150

ARC 141-A

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

ๅฎŸ่ฃ…ใŒๅคงๅค‰

ๅ‘จๆœŸ็š„ใชๆ•ฐ $D$ ใฎๆœ€ๅฐๅ‘จๆœŸ $P$ ใ‚’ๅฐ‘ใ—็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚็ทๅฝ“ใŸใ‚ŠใŒใชใ„ใจไพ‹ๅค–ๅ‡ฆ็†ใŒๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

  • $P=1..999$ ใ‚’็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚ $D$ ใŒไธ€ๆกใฎใจใใ‚’ๆ‹พใ†ใ€‚ไพ‹ใˆใฐ $N=10000$ ใชใ‚‰ $D=9999,P=9$ ใงใ‚ใ‚‹ใ€‚ $N$ ใ‚ˆใ‚Š $D$ ใฎๆ–นใŒๆกๆ•ฐใŒๅฐ‘ใชใ„ใ“ใจใซๆณจๆ„ใ™ใ‚‹ใ€‚
  • $P \geq 10^3$ ใซใคใ„ใฆใฏใ€ $N$ ใฎๅŠๅˆ†ใฎๆกๆ•ฐ $S=\lfloor 1 + log10(N) \rfloor / 2$ ใซใคใ„ใฆใ€ $W=3..S$ ๆกใพใง่ชฟในใ‚‹ใ€‚ๅ…จๆŽข็ดขใ™ใ‚‹ใจ่จˆ็ฎ—้‡ใŒๅคงใใ™ใŽใ‚‹ใฎใงใ€ $N$ ใฎๆœ€ๅˆใฎ $W$ ๆก ใ‚’ๅ–ใ‚Šๅ‡บใ—ใฆ $Q$ ใจใ—ใ€ไปฅไธ‹ใฎ้€šใ‚Š $P$ ใฎๅ€™่ฃœใ‚’ไฝœใ‚‹
    • ใใฎใพใพ $P=Q$ ใจใ™ใ‚‹
    • $Q$ ใฎๆœ€ๅˆใฎ $i=1..W$ ๆกใ‚’ๅ–ใ‚Šๅ‡บใ—ใŸ $R$ ใซใคใ„ใฆใ€ $R-1$ ใฎๅพŒใซ $W-i$ ๅ€‹ใฎ 9 ใ‚’ใคใชใ’ใ‚‹ใ€‚

ไพ‹ใˆใฐ 86421234 ใซใคใ„ใฆใ€ๆœ€ๅพŒใฎไบŒใคใ‚’ ${8,86,864,8642}$, ${79,799,7999,859,8599,8639}$ ใซใ™ใ‚‹ใ€‚ๅ€™่ฃœใจใชใ‚‹ใ™ในใฆใฎ $P$ ใซใคใ„ใฆ $N$ ใ‚’่ถ…ใˆใชใ„็ฏ„ๅ›ฒใง็ตๅˆใ—ใฆ $D$ ใฎๆœ€ๅคงๅ€คใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚€ใจใ€ใ‚‚ใ†ๅฐ‘ใ—็ฐกๅ˜ใซ่€ƒใˆใฆใ‚ˆใ‹ใฃใŸใ‚‰ใ—ใ„ใ€‚

ARC 141-B

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

2,3ๆ—ฅๆŽ›ใ‹ใฃใŸใ€‚ๆ–น้‡ใฏใ™ใ็ซ‹ใฃใŸใŒใ€ใชใ‹ใชใ‹DPใ‚’็ต„ใฟ็ซ‹ใฆใ‚‰ใ‚Œใชใ‹ใฃใŸใ€‚

$A_1 < A_2$ ใ‹ใค $A_1 < A_1 \oplus A_2$ ใชใฎใงใ€ $A_1$ ใฎๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใ‚ˆใ‚Šใ€ $A_2$ ใฎๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใฏๅทฆใซใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚ $a$ ใฎไบŒ้€ฒๆ•ฐ่กจ่จ˜ใฎใƒ“ใƒƒใƒˆๆ•ฐ bit width ใ‚’ $W(a)$ ใจ็ฝฎใใจใ€ $W(A_i) < W(A_{i+1})$ ใจ่จ€ใˆใ‚‹ใ€‚

ใ“ใ‚Œใ‚’ๅŸบใซDPใ‚’่€ƒใˆใ‚‹ใ€‚ใพใš $N = 1$ ใชใ‚‰็ญ”ใˆใฏ $M$ ใ€ $N > W(M)$ ใชใ‚‰็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ $2 \leq N \leq W(M)$ ใจใ™ใ‚‹ใ€‚

$DP[w][c]$ ใ‚’ใ€ $W(max(A)) = w$ ใซใชใ‚‹ใพใง $A$ ใฎ่ฆ็ด ใ‚’่ฟฝๅŠ ใ—ใฆใ€ $A$ ใฎ่ฆ็ด ๆ•ฐ $|A| = c$ ใซใชใ‚‹็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใจใ™ใ‚‹ใ€‚ๅˆๆœŸๅ€คใฏ $DP[][] = 0$ ใ€ใŸใ ใ— $DP[0][0] = 1$ ใจใ™ใ‚‹ใ€‚

$w=1..W(M)$ ใซใคใ„ใฆใ€ $w=W(a)$ ใชใ‚‹ๆ•ฐใฎ็ต„ใฟๅˆใ‚ใ›ใฏใ€ $w < W(M)$ ใชใ‚‰ $2^{w-1}$ ใ€ $w = W(M)$ ใชใ‚‰ $M-2^{W(M)-1}$ ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆDPใฎๆผธๅŒ–ๅผ $DP[w][c+1]= DP[w][c+1] + DP[i][c]$ ใ‚’ $i=0..(w-1), c=0..(N-1)$ ใงๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

็ญ”ใˆใฏ $DP[][N]$ ใฎๅ’Œใงใ‚ใ‚‹ใ€‚

ARC 142-A

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

$K$ ใซใชใ‚Œใชใ„ๆ•ฐ

$f(x)=K$ ใ‚’ๆบ€ใŸใ™ $x$ ใŒใชใ„ $K$ ใซใคใ„ใฆใฏ0ใ‚’่ฟ”ใ™ใ€‚ใ“ใ‚Œใ‚’ๆŽขใ™ใฎใŒใ“ใฎๅ•้กŒใฎ่ถฃๆ—จใงใ‚ใ‚‹ใ€‚่ฉฒๅฝ“ใ™ใ‚‹ใฎใฏๆœซๅฐพใซ0ใŒ็ถšใใคใพใ‚Š10ใฎๅ€ๆ•ฐใจใ€ไธŠใ‹ใ‚‰ $i$ ๆก็›ฎใŒไธ‹ใ‹ใ‚‰ $i$ ๆก็›ฎใ‚ˆใ‚Šๅฐใ•ใ„ๆ•ฐใงใ‚ใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใฏ $K$ ใจ $K$ ใ‚’ๅ่ปขใ—ใŸๆ•ฐ $K'$ ใฎไธกๆ–นใซใคใ„ใฆใ€10ๅ€ใ™ใ‚‹ใ“ใจใ‚’็นฐใ‚Š่ฟ”ใ—ใฆ $N$ ไปฅไธ‹ใฎๆ•ฐใฎ็ทๆ•ฐใ‚’ๆŒ™ใ’ใ‚‹ใ€‚ใŸใ ใ— $K=K'$ ใฎใจใใซไบŒ้‡ใซๆ•ฐใˆใชใ„ใ‚ˆใ†ๆณจๆ„ใ™ใ‚‹ใ€‚

ARC 142-B

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

ๅ…จใ่งฃๆณ•ใฎ่ฆ‹ๅฝ“ใŒใคใ‹ใชใ‹ใฃใŸใ€‚ใชใœๆ€ใ„ใคใ‹ใชใ„ใฎใ‹ใ‚‚ๅˆ†ใ‹ใ‚‰ใชใ„(Lๅญ—ใจใ‹่‰ฒใ€…่ฉฆใ—ใŸใ‘ใฉใ ใ‚ใ ใฃใŸ)ใ€‚

ARC 142-C

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

10ๅˆ†ใงๅˆ†ใ‹ใฃใŸใคใ‚‚ใ‚ŠใŒ50ๅˆ†ๆŽ›ใ‹ใฃใŸใ€‚

้ ‚็‚น้–“ใฎ่ท้›ข $D(1,3..N)$ , $D(2,3..N)$ ใ‚’ๆฑ‚ใ‚ใ€ $min(D(1,i) + (2,i))$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใจ่จ€ใ„ใŸใ„ใจใ“ใ‚ใ ใŒใ€ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใ‚’ไธๅฏงใซๆ‹พใ‚ใชใ„ใจWAใ™ใ‚‹ใ€‚

$d = |D(1,i) - (2,i)|$ ใŒใ™ในใฆใฎ $i$ ใซใคใ„ใฆ็ญ‰ใ—ใ„ๆ™‚ใ€้ ‚็‚น1,2ใŒ้šฃๆŽฅใ—ใฆใ„ใ‚‹ใจ็–‘ใ‚ใ‚Œใ‚‹ใ€‚ๅฎŸ้š›ใซใฏใ€ $N = 3,4$ ใŒไพ‹ๅค–ใงใ‚ใ‚‹ใ€‚

  • $N = 3, d = 0$ ใชใ‚‰ใ€้ ‚็‚นใŒ $[1,3,2]$ ใฎ้ †ใซไธฆใ‚“ใงใ„ใ‚‹ใ€‚ใ‚ˆใฃใฆ็ญ”ใˆใฏ2ใงใ‚ใ‚‹ใ€‚
  • $N = 4, d = 0$ ใชใ‚‰ใ€้ ‚็‚นใŒ $[1,3,4,2]$ , $[1,2,3,4]$ , $[3,1,2,4]$ ใฎใฉใ‚Œใ‹ใฎ้ †ใซไธฆใ‚“ใงใ„ใ‚‹ใ€‚ใใ“ใง $D(3,4)$ ใ‚’่จŠใใ€‚
    • $D(3,4) > 1$ ใชใ‚‰ $[3,1,2,4]$ ใจใ€้ ‚็‚น $1,2$ ใฏ้šฃๆŽฅใ—ใฆใ„ใ‚‹ใฎใงใ€็ญ”ใˆใฏ1ใงใ‚ใ‚‹
    • $D(3,4) = 1$ ใ‹ใค $max(D(1..2,3..4)) = 3$ ใชใ‚‰ $[1,2,3,4]$ ใชใฎใง็ญ”ใˆใฏ1ใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ $[1,3,4,2]$ ใชใฎใง็ญ”ใˆใฏ3ใงใ‚ใ‚‹ใ€‚
    • ไธŠ่จ˜ไปฅๅค–ใง $d=1$ ้ ‚็‚น $1,2$ ใฏ้šฃๆŽฅใ—ใฆใ€ไป–ใฎ้ ‚็‚นใŒใคใชใŒใฃใฆใ„ใ‚‹ใฎใงใ€็ญ”ใˆใฏ1ใงใ‚ใ‚‹ใ€‚

$d = |D(1,i) - (2,i)|$ ใŒ็ญ‰ใ—ใใชใ„ใจใใฏใ€ $min(D(1,i) + (2,i))$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€ $N$ ใงใฏใชใ $min(D(1,i) + (2,i))$ ใ‚’ๅ ดๅˆๅˆ†ใ‘ใ—ใฆใ„ใ‚‹ใ€‚

ARC 143-A

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

ๆ•ดๅœฐ

$A \leq B \leq C$ ใจใ—ใฆไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใชใ„ใ€‚

  • $B$ ใ‚’ $A$ ใซใ™ใ‚‹ใซใฏ $B,C$ ใ‚’ $d1=B-A$ ๅ›žๅผ•ใใ€‚ใ™ใ‚‹ใจ $B^{'}=B-d1=A,C^{'}=C-d1$ ใซใชใ‚‹ใ€‚
  • ๆฌกใซ $C^{'}$ ใ‚’ $A$ ใซ็ญ‰ใ—ใใ™ใ‚‹ใซใฏ $A,C^{'}$ ใจ $B^{'},C^{'}$ ใ‚’ $d2=C^{'}-A=C-B$ ๅ›žใšใคๅผ•ใใ€‚
  • $d1=B-A$ , $d2=C-B$ ใ‚ˆใ‚Šใ€ $A,B,C$ ใฏ $A+B-C$ ใซใชใ‚‹
  • ๆœ€ๅพŒใซไธŠ่จ˜ใฎๆ›ดๆ–ฐๅพŒใฎ $A,B,C$ ใ‚’0ใซใชใ‚‹ใพใงๅผ•ใใ€‚ใŸใ ใ—ๆ—ขใซ $A,B,C$ ใŒ0ๆœชๆบ€ใชใ‚‰็ญ”ใˆใฏ -1 ใงใ‚ใ‚‹ใ€‚

ไธŠ่จ˜ใ‚’่ฆ‹ใฆใ‚‚ๅ…ฌๅผ่งฃ่ชฌใ‚’ๅผๅค‰ๅฝขใ—ใฆใ‚‚ๅฎŸ่ฃ…ใ‚’่ฆ‹ใฆใ‚‚ใ€ $A + B \geq C$ ใŒ่งฃใ‚ใ‚Šใจใ„ใ†ๆกไปถใ‚’ๅฐŽใ‘ใ‚‹ใ€‚ $A$ ใจ $B$ ใพใŸใฏ $A$ ใจ $C$ ใ‚’ๅผ•ใ็ถšใ‘ใฆ0ใ‚’ๅ‰ฒใ‚Š่พผใพใชใ„ใจใ„ใ†ใฎใŒ็›ด่ฆณ็š„ใช็†่งฃใงใ‚ใ‚‹ใ€‚

ARC 143-B

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

ๅŒ…้™คๅŽŸ็†

ๅ•้กŒๆ–‡้€šใ‚Šๆ•ฐใˆใ‚‹ใฎใฏๅคงๅค‰ใชใฎใงใ€ไปฅไธ‹ใฎใ‚ˆใ†ใซๅ•้กŒใ‚’่ชญใฟๆ›ฟใˆใ‚‹ใ€‚

ๅฐ‘ใชใใจใ‚‚ไธ€ใคใฎใƒžใ‚นใŒไปฅไธ‹ใฎๆกไปถใฎใฉใกใ‚‰ใ‚‚ๆบ€ใŸใ™ใ‚‚ใฎใฎๅ€‹ๆ•ฐ

  • ใใฎใƒžใ‚นใซๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ๆ•ฐใ‚ˆใ‚Šๅคงใใ„ๆ•ฐใŒๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒๅŒใ˜ๅˆ—ใซๅญ˜ๅœจใ—ใชใ„(ใใฎใƒžใ‚นใซๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ๆ•ฐใŒใ€ใใฎๅˆ—ใงไธ€็•ชๅคงใใ„)
  • ใใฎใƒžใ‚นใซๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ๆ•ฐใ‚ˆใ‚Šๅฐใ•ใ„ๆ•ฐใŒๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใƒžใ‚นใŒๅŒใ˜่กŒใซๅญ˜ๅœจใ—ใชใ„(ใใฎใƒžใ‚นใซๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ๆ•ฐใŒใ€ใใฎ่กŒใงไธ€็•ชๅฐใ•ใ„)

ใƒžใ‚นใ‚’ๅทฆไธ‹ใ‹ใ‚‰ๅทฆไธŠใ‚’้€šใฃใฆๅณไธŠใซๅ‘ใ‹ใฃใฆใ€ๆ•ฐใ‚’ๆ˜‡้ †ใซไธฆในใ‚‹ใจ็ตŒ่ทฏไธŠใฎใƒžใ‚นใฏไธŠ่จ˜ใฎๆกไปถใ‚’ๆบ€ใŸใ™ใ€‚ใƒžใ‚นใซไธฆในใ‚‰ใ‚Œใ‚‹ๆ•ฐใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $N^2 \choose (2N-1)$ ้€šใ‚Šใ€ไธฆในๆ–นใฏ ${(N-1)!}^2$ ้€šใ‚Šใ€ไธฆในใ‚‹ๅบงๆจ™ใฏ่กŒใจๅˆ—ใŒ $N^2$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ๆฎ‹ใ‚Šใฎใƒžใ‚นใซใคใ„ใฆใฏไธŠ่จ˜ใฎๆกไปถใ‚’ๆบ€ใŸใ•ใชใ„ใ€‚ใ‚‚ใ—ๆบ€ใŸใ™ใ‚‚ใฎใŒใ‚ใ‚Œใฐ็ตŒ่ทฏใ‚’้€šใฃใฆ่‡ชๅˆ†่‡ช่บซใŒ่‡ชๅˆ†ใ‚ˆใ‚Šๅคงใใใชใ‚‹ใฎใง็Ÿ›็›พใ™ใ‚‹ใ€‚ใ‚ˆใฃใฆๆฎ‹ใ‚Šใฎใƒžใ‚นใฏ $(N-1)^{2}!$ ใฎ้…็ฝฎใŒใ‚ใ‚‹ใ€‚

ๅŒ…้™คๅŽŸ็†ใ‚’็”จใ„ใŸใฎใงใ€็ญ”ใˆใฏๅทฎ้›†ๅˆใฎๆ•ฐ $(N^2)! - {N^2 \choose (2N-1)} \times {(N-1)!}^2 \times N^2 \times (N-1)^{2}!$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ARC 144-A

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

็นฐไธŠใ‚Š

$N$ ใŒๅฏ„ไธŽใง $f(x) = N$ ใ‹ใ‚‰ $f(2x) = M$ ใซใ™ใ‚‹ใฎใซ $M$ ใ‚’ๆœ€ๅคงๅŒ–ใ—ใŸใ‘ใ‚Œใฐใ€ๅ„ๆกใฎ2ๅ€ใŒ็นฐใ‚ŠไธŠใŒใ‚‰ใชใ‘ใ‚Œใฐใ‚ˆใ„ใ€‚ใคใพใ‚Š $x$ ใฏ ${0,1,2,3,4}$ ใ‹ใ‚‰ใชใ‚‹ๆ•ฐๅ€คใซใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ใ“ใฎใจใ $2x$ ใฎๅ„ๆกใฏ ${0,2,4,6,8}$ ใ‹ใ‚‰ๆˆใ‚Šใ€ $M=2N$ ใงใ‚ใ‚‹ใ€‚ๆกใ‚’็นฐใ‚ŠไธŠใ’ใ‚‹ใจ $f(x)$ ใŒๆธ›ใฃใฆใ—ใพใ†ใ“ใจใฏๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹ใ€‚

$M=2N$ ใŒๅฏ„ไธŽใง $f(2x) = N$ ใ‹ใ‚‰ $f(x) = M$ ใซใ™ใ‚‹ใฎใซ $x$ ใ‚’ๆœ€ๅฐๅŒ–ใ—ใŸใ‘ใ‚Œใฐใ€ไธŠ่จ˜ใฎ้€†ใฎๆ“ไฝœใ‚’ใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ใงใใ‚‹ใ ใ‘ๅคšใใฎๆกใซ4ใ‚’็”จใ„ใ€ $N \quad mod \quad 4$ ใŒ0ใ‚ˆใ‚Šๅคงใใ‘ใ‚Œใฐๅ…ˆ้ ญใฎๆกใซ็”จใ„ใ‚‹ใ€‚

ARC 144-B

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

ไบŒๅˆ†ๆŽข็ดขใ€‚

$a,b$ ใŒๆ•ดๆ•ฐใชใฎใงใ€่ดˆไธŽใฎๅ›žๆ•ฐใ‚‚ๆ•ดๆ•ฐใซ้™ใ‚‹ใ€‚ $A$ ใฎๅ…จ่ฆ็ด ใ‚’ใ‚ใ‚‹็›ฎๆจ™ $T$ ไปฅไธŠใซใ™ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚่ดˆไธŽใฎๅ›žๆ•ฐใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • ใ‚‚ใ‚‰ใ†ๅ›žๆ•ฐ : $max(0, a \lceil (T - A_i) / a \rceil)$
  • ไธŽใˆใ‚‹ๅ›žๆ•ฐ : $max(0, b \lfloor (A_i - T) / b \rceil)$

$T$ ใŒๅข—ใˆใ‚‹ใซใคใ‚Œใ€ใ‚‚ใ‚‰ใ†ๅ›žๆ•ฐใฏๅบƒ็พฉๅ˜่ชฟๆธ›ๅฐ‘ใ€ไธŽใˆใ‚‹ๅ›žๆ•ฐใฏๅบƒ็พฉๅ˜่ชฟๅข—ๅŠ ใชใฎใงใ€ใ‚ใ‚‹ $T$ ใŒๅญ˜ๅœจใ—ใฆใใ‚Œไปฅไธ‹ใงใฏใ‚‚ใ‚‰ใ†ๅ›žๆ•ฐใŒไธŽใˆใ‚‹ๅ›žๆ•ฐไปฅไธŠใซใชใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $T$ ใ‚’ไบŒๅˆ†ๆŽข็ดขใงๆฑ‚ใ‚ใ‚‹ใ€‚็ฏ„ๅ›ฒใ‚’้›‘ใซๆฑบใ‚ใ‚‹ใจๆผ”็ฎ—ใŒใ‚ชใƒผใƒใƒผใƒ•ใƒญใƒผใ™ใ‚‹ใฎใงใ€็ฏ„ๅ›ฒใฏ $[0, 10^9+1]$ ใซใ™ใ‚‹ใ€‚

ใ“ใฎใ‚ˆใ†ใช $T$ ใŒๆฑ‚ใพใฃใŸใ‚‰ใ€ $T$ ใงๅฎŸ้š›ใซ่ดˆไธŽใ—ใฆใ€่ดˆไธŽใ—ใŸๅพŒใฎ $A_i$ ใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

  • ใ‚‚ใ‚‰ใฃใŸๅพŒ : $min(A_i, A_i + a \lceil (T - A_i) / a \rceil)$
  • ไธŽใˆใŸๅพŒ : $min(A_i, A_i - b \lfloor (A_i - T) / b \rceil)$

ARC 144-C

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

ใฉใ†ใ—ใฆใ‚‚ๅไพ‹ใŒ่ฆ‹ใคใ‹ใ‚‰ใš่ซฆใ‚ใŸใ€‚

ไปฅไธ‹ใฎๆ–นๆณ•ใฏไธŠๆ‰‹ใใ„ใ‹ใชใ„ใ€‚ $A_{1..K} = (K+1..2K)$ , $A_{(N-K+1)..N} = (N-2K+1)..(N-K)$ ใซใ—ใฆใ€ๆฎ‹ใ‚Š $A_{K+1..}$ ใซใคใ„ใฆๆœชไฝฟ็”จใฎๆ•ฐใฎๆœ€ๅฐๅ€คใซใ™ใ‚‹ใจใ€WAใŒๅคง้‡ใซๅ‡บใ‚‹ใ€‚ $A_{(N-K+1)..N} = (N-2K+1)..(N-K)$ ใŒ้–“้•ใฃใฆใŠใ‚Šใ€ๅฎŸ้š›ใซใฏ $(N-2K+1)..(N-K)$ ใ‚’ใ‚‚ใฃใจๆ‰‹ๅ‰ใซๆŒใฃใฆใใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’ๅŸบใซใ€ $(N-K+1)..N$ ใ‚’ $A_{(N-2K+1)..(N-K)}$ ใซ็ฝฎใใ‚ˆใ†ใ‚ณใƒผใƒ‰ใ‚’ๅค‰ใˆใŸใ‚‰ ้€šใฃใŸ ใ€‚่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ $A$ ใซไฝ•ใ‚’็ฝฎใใ‹ใงใฏใชใใ€ $i$ ใ‚’ใฉใ“ใซ็ฝฎใใ‹ๆณจ็›ฎใ™ใ‚‹ใจๆญฃ่งฃใซใชใ‚‹ใ€‚

ARC 145-A

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

ๅ ดๅˆๅˆ†ใ‘ใ‚’ๅ˜็ด”ใซใ™ใ‚‹

  1. ๅ…ƒใ‹ใ‚‰ๅ›žๆ–‡ใชใ‚‰ Yes ใงใ‚ใ‚‹ใ€‚
  2. ใใ†ใงใชใใฆไบŒๆ–‡ๅญ—ใชใ‚‰ใ€ AB ใ‹ BA ใชใฎใง No ใงใ‚ใ‚‹ใ€‚
  3. ใใ†ใงใชใใฆ ๆ–‡ๅญ—ๅˆ—ใฎๅ…ˆ้ ญใŒ B ใพใŸใฏๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใŒ A ใชใ‚‰ Yes ใงใ‚ใ‚‹ใ€‚
  4. ใ„ใšใ‚Œใงใ‚‚ใชใ„ๅ ดๅˆใฏ No ใงใ‚ใ‚‹ใ€‚ๆ–‡ๅญ—ๅˆ—ใฎๅ…ˆ้ ญใŒ A ใงๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใŒ B ใชใ‚‰ใ€ๅ…ˆ้ ญใจๆœซๅฐพใ‚’ไธ€่‡ดใ•ใ›ใ‚‹ๆ–นๆณ•ใฏ็„กใ„ใ€‚

3็•ช็›ฎใซใคใ„ใฆใ€ๆ–‡ๅญ—ๅˆ—ใฎ้•ทใ• $N$ ใง่ฉณใ—ใๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹ใจไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • $N$ ใŒๅฅ‡ๆ•ฐใงๅ…ˆ้ ญใŒ B ใชใ‚‰ใ€BใฎๅพŒใซ AB ใ‚’ๆœซๅฐพใ‹ใ‚‰ไธฆในใ‚‹
  • $N$ ใŒๅฅ‡ๆ•ฐใงๆœซๅฐพใŒ A ใชใ‚‰ใ€ๅ…ˆ้ ญใ‹ใ‚‰ๆœซๅฐพใฎ็›ดๅ‰ใพใง AB ใ‚’ไธฆในใ‚‹
  • $N$ ใŒๅถๆ•ฐใงๅ…ˆ้ ญใŒ B ใชใ‚‰ใ€ $2..(N/2+1)$ ๆ–‡ๅญ—็›ฎใซ AB ใ‚’ไธฆในใŸใ‚ใจใ€ $(N/2+1)..N$ ๆ–‡ๅญ—็›ฎใซ AB ใ‚’ไธฆในใ‚‹ใ€‚ $N/2+1$ ๆ–‡ๅญ—็›ฎใ‚’ B ใซใ—ใŸๅพŒ A ใซๅค‰ใˆใ‚‹ใ€‚
  • $N$ ใŒๅถๆ•ฐใงๆœซๅฐพใŒ A ใชใ‚‰ใ€ $(N/2-1)..(N-1)$ ๆ–‡ๅญ—็›ฎใซ AB ใ‚’ไธฆในใŸใ‚ใจใ€ $1..(N/2)$ ๆ–‡ๅญ—็›ฎใซ AB ใ‚’ไธฆในใ‚‹ใ€‚ $N/2-1$ ๆ–‡ๅญ—็›ฎใ‚’ A ใซใ—ใŸๅพŒ B ใซๅค‰ใˆใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ‚‚ใฃใจ็ฐกๆฝ”ใงใ‚ใ‚Šใ€ $2..(N-1)$ ๆ–‡ๅญ—็›ฎใ‚’ไธ€่‡ดใ•ใ›ใฆใ„ใ‚‹ใ€‚ใใ†ใ„ใ†่€ƒใˆใŒใ‚ใฃใŸใ‹ใ€‚

ARC 145-B

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

$A \leq B$ ใชใ‚‰ Aliceใฏ $N$ ใ‚’ $A$ ใงๅ‰ฒใ‚Œใ‚‹ใ ใ‘ๅ‰ฒใฃใฆ $N \quad mod \quad A$ ใ‚’Bobใซ้€ใ‚Œใฐใ€Bobใฏไฝ•ใ‚‚ใงใใชใ„ใ€‚AliceใŒ่ฒ ใ‘ใ‚‹ใฎใฏๅˆๆ‰‹ใงไฝ•ใ‚‚ใงใใชใ„ $N < A$ ใฎใจใใ ใ‘ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ็ญ”ใˆใฏ $N - A + 1$ ๅ›žใงใ‚ใ‚‹ใ€‚

$A < B$ ใชใ‚‰ Aliceใฏ $N$ ใ‚’ $A$ ใงๅ‰ฒใ‚Œใ‚‹ใ ใ‘ๅ‰ฒใฃใฆ $r = N \quad mod \quad A$ ใ‚’Bobใซ้€ใ‚‹ใ€‚ $r < B$ ใชใ‚‰Bobใฏไฝ•ใ‚‚ใงใใชใ„ใ€‚ $r \geq B$ ใชใ‚‰ $B$ ๅทฎใ—ๅผ•ใ„ใฆAliceใซ้€ใ‚Š่ฟ”ใ›ใฐAliceใฏไฝ•ใ‚‚ใงใใชใ„ใ€‚AliceใŒ้€ใ‚‹้‡ใ‚’ๆธ›ใ‚‰ใ™ใจๅ…ˆใปใฉใฎ็Šถๆณ $A \leq B$ ใฎ็œŸ้€†ใชใฎใงBobใŒๆœ‰ๅˆฉใซใชใ‚‹(Bobใฏไฝ•ใ‹ๅทฎใ—ๅผ•ใใ“ใจใŒใงใใ‚‹)ใ ใ‘ใงAliceใซใจใฃใฆๆœ‰ๅˆฉใซใฏใชใ‚‰ใชใ„ใŸใ‚ใ€ใใฎใ‚ˆใ†ใชใ“ใจใฏใ—ใชใ„ใ€‚

ใ‚ˆใฃใฆ $A < B$ ใชใ‚‰AliceใŒๅ‹ใคๅ›žๆ•ฐใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • $N < A$ ใฏๅˆๆ‰‹ใงไฝ•ใ‚‚ใงใใชใ„ใฎใง0ๅ›žใงใ‚ใ‚‹ใ€‚
  • $N \geq A$ ใชใ‚‰ใ€ $N$ ใ‚’ $A$ ใงๅ‰ฒใฃใŸไฝ™ใ‚ŠใŒๅ‹ๆ•—ใซใ‹ใ‹ใ‚ใ‚Šใ€ $N$ ใฎๅ‘จๆœŸๆ€งใ‹ใ‚‰ $B (\lfloor N/A \rfloor - 1) + min(B, 1+ N \quad mod \quad A))$ ๅ›žใงใ‚ใ‚‹ใ€‚1ๅผ•ใ„ใฆใ„ใ‚‹ใฎใฏ $N < A$ ใฎๅ ดๅˆใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฎใ‚ˆใ†ใซ1ใ‚’็งปๅ‹•ใ™ใ‚Œใฐ $B (\lfloor N/A \rfloor) + min(B-1, N \quad mod \quad A))$ ๅ›žใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ $A,B$ ใฎๅคงๅฐ้–ขไฟ‚ใ‚’ๅŒบๅˆฅใ›ใšใซไธŠ่จ˜ใจๅŒใ˜ๅผใ‚’ๅฐŽๅ‡บใ—ใฆใ„ใ‚‹ใ€‚

ARC 145-C

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

16ๅˆ†ใง่งฃใ‘ใ€่งฃ็ญ”ๆ™‚้–“ใฎๅคงๅŠใฏใ‚ซใ‚ฟใƒฉใƒณๆ•ฐใฎๅฎš็พฉใ‚’่ชฟในใ‚‹ใ“ใจใ ใฃใŸใ€‚้’diffใฎๅ•้กŒใ‚‚ใ€่ฆ‹ใŸ็žฌ้–“ใซ็ญ”ใˆใŒๅˆ†ใ‹ใ‚‹ใ“ใจใŒใŸใพใซใ‚ใ‚‹ใ€‚

$A$, $B$ ใฎ็ต„ใฟๅˆใ‚ใ›ใฏๆ˜‡้ †ใฎๆ•ฐใ‚’ใƒšใ‚ขใซใ™ใ‚‹ใฎใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚ใคใพใ‚Š $(1,2), (3,4), ... (2N-1,2N)$ ใซใ™ใ‚‹ใ€‚้ †ๅบใ‚’็„ก่ฆ–ใ—ใŸใƒšใ‚ขใฎไฝœใ‚Šๆ–นใฏ1้€šใ‚Šใชใฎใงใ€้ †ๅบใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ๆฑ‚ใ‚ใ‚‹ใ€‚

  • ใƒšใ‚ขใฎ้ †ๅบใŒ $N!$ ้€šใ‚Š
  • $A,B$ ใฉใกใ‚‰ใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ใ‹ใŒ $2^N$ ้€šใ‚Š
  • $P$ ใ‚’ $A,B$ ใซๅ‡บ็พใ•ใ›ใ‚‹ๆ–นๆณ•ใฏๆ‹ฌๅผงๅˆ—ใฎ็ต„ใฟๅˆใ‚ใ›ๆ•ฐใจๅŒใ˜ใงใ€ใ‚ซใ‚ฟใƒฉใƒณๆ•ฐใงใ‚ใ‚‹

ใ‚ซใ‚ฟใƒฉใƒณๆ•ฐใฏ $C_N = {{2N} \choose {N}} / N+1 = (2N)! / N!(N+1)!$ ใงใ‚ใ‚‹ใ€‚

ARC 146-A

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

$A$ ใ‹ใ‚‰3ใค้ธใถใชใ‚‰ใ€ๆกๆ•ฐใŒๅคงใใใ€ๆกๆ•ฐใŒๅŒใ˜ใชใ‚‰ๅคงใใชๆ•ฐๅญ—ใŒๅคงใใช(ๅทฆใฎ)ๆกใซไธฆใ‚“ใงใ„ใ‚‹ใ‚‚ใฎใ‚’้ธใถใ€‚ใ“ใ‚Œใฏๅ˜ใซ $A$ ใ‚’ๆ•ฐๅ€คใจใ—ใฆ้™้ †ใซไธฆใณๆ›ฟใˆใฆไธŠไฝ3ใคใ‚’้ธในใฐใ‚ˆใ„ใ€‚

$N$ ใ‹ใ‚‰3ใค้ธใ‚“ใ ใ‚‰้ †ๅˆ—6้€šใ‚Šใซใคใ„ใฆใ€ๆ–‡ๅญ—ๅˆ—ใจใ—ใฆใคใชใ’ใ‚‹ใ€‚ๆ–‡ๅญ—ๅˆ—ใจใ—ใฆๆœ€ใ‚‚ๅคงใใ„ใ‚‚ใฎใŒ็ญ”ใˆใงใ‚ใ‚‹(6้€šใ‚Šใจใ‚‚ๆ–‡ๅญ—ๅˆ—้•ทใ•ใฏๅŒใ˜ใชใฎใง)ใ€‚6้€šใ‚Š่ฉฆใ•ใšใซๆ–‡ๅญ—ๅˆ—้ †ใซใ‚ฝใƒผใƒˆใ—ใฆใคใชใ’ใŸๆ–‡ๅญ—ๅˆ—ใฏWAใ™ใ‚‹ใ€‚่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ ${8,87}$ ใ‚’ 887 ใงใฏใชใ 878 ใซใ™ใ‚‹ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

ARC 146-B

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

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

ๆกใฎๅคšใ„ๆ–นใ‹ใ‚‰ๆ•ดๅœฐใ™ใ‚Œใฐใ„ใ„ใ€‚ๅˆถ็ด„ใ‹ใ‚‰ใ€ $i=33..0$ ใซใคใ„ใฆใ€็ญ”ใˆใซ $B$ ใซ $2^{i}$ ใƒ“ใƒƒใƒˆใ‚’็ซ‹ใฆใ‚‹ใ‹ใฉใ†ใ‹่€ƒใˆใ‚‹ใ€‚ $A$ ใฏๅ…ฅๅŠ›ใ‚’ๅˆๆœŸๅ€คใจใ—ใฆใ€ใƒซใƒผใƒ—ใ”ใจใซๆธ›ใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

  • $A$ ใ‚’้™้ †ใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚
  • $A$ ใฎไธŠไฝ $K$ ๅ€‹ใซใคใ„ใฆใ€ $S = \sum_{i=1..K} max(0, 2^{i} - A_i)$ ใคใพใ‚Šใใ‚Œใ‚‰ใ‚’ $2^{i}$ ใซใ™ใ‚‹ใŸใ‚ใซๅฟ…่ฆใชๅŠ ็ฎ—ๅ›žๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚
  • $S = 0$ ใชใ‚‰ใ€ $A \geq 2^{i}$ ใจใชใ‚‹ $A$ ใŒ $K$ ๅ€‹ไปฅไธŠใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $B$ ใซ $2^{i}$ ใƒ“ใƒƒใƒˆใ‚’็ซ‹ใฆใ‚‰ใ‚Œใ‚‹ใ€‚ใƒ“ใƒƒใƒˆ $B$ ใŒ็ซ‹ใฃใฆใ„ใ‚‹ $A$ ใ‚’ๆฎ‹ใ—ใฆไป–ใฏๆจใฆใ‚‹ใ€‚ใ“ใฎๅ‡ฆ็†ใงๅขƒ็•Œๅ€คใ‚’้–“้•ใˆใฆ 1 WAใ—ใŸใ€‚
  • $S \leq M$ ใชใ‚‰ $A$ ใฎไธŠไฝ $K$ ๅ€‹ใซๅˆ่จˆ $S$ ่ถณใ—ใฆ $2^{i}$ ใซใ™ใ‚‹ใ€‚ใ‚ˆใฃใฆ $B$ ใซ $2^{i}$ ใƒ“ใƒƒใƒˆใ‚’็ซ‹ใฆใ‚‰ใ‚Œใ‚‹ใ€‚
    • $A$ ใฏไธŠไฝ $K$ ๅ€‹ๆฎ‹ใ—ใฆๅพŒใฏๆจใฆใ‚‹ใ€‚
    • $A_i \leq 2^{i}$ ใชใ‚‰ $A_i$ ใ‚’ $A_i \land 2^{i} - 1$ ใซใ™ใ‚‹ใ€‚ใคใพใ‚Šไธ‹ไฝใƒ“ใƒƒใƒˆใ‚’ใƒžใ‚นใ‚ฏใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ $A_i$ ใซๅŠ ็ฎ—ใ—ใฆ $2^{i}$ ใซใ—ใŸใฎใงใƒžใ‚นใ‚ฏใ—ใฆ $0$ ใซใ™ใ‚‹
    • $M$ ใ‚’ $S$ ๆธ›ใ‚‰ใ™ใ€‚
  • $S < M$ ใชใ‚‰ $B$ ใซ $2^{i}$ ใƒ“ใƒƒใƒˆใ‚’็ซ‹ใฆใ‚‰ใ‚Œใชใ„ใ€‚ $A_i$ ใ‚’ $A_i \land 2^{i} - 1$ ใซใ™ใ‚‹ใ€‚ใคใพใ‚Šไธ‹ไฝใƒ“ใƒƒใƒˆใ‚’ใƒžใ‚นใ‚ฏใ™ใ‚‹ใ€‚

ใ“ใ‚Œใ‚’็นฐใ‚Š่ฟ”ใ—ใฆๅพ—ใ‚‰ใ‚Œใ‚‹ $B$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ $A$ ใ‚’้™้ †ใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใฎใฏใ€ $2^{i}$ ใƒ“ใƒƒใƒˆใŒ็ซ‹ใฃใฆใ„ใ‚‹ใจใ—ใฆใ€ $i$ ใฎๅณ(LSBๅด)ใซใ‚ใ‚‹ๆœ€ๅทฆใƒ“ใƒƒใƒˆใŒ็ซ‹ใฃใฆใ„ใ‚‹ใปใฉ $A$ ใฎๅ…ˆ้ ญๅดใซๆฅใ‚‹ใ‚ˆใ†ใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใจใ„ใ†ๆ„ๅ‘ณใงใ‚ใ‚‹ใ€‚ $M$ ใฎๆถˆ่ฒปๅ›žๆ•ฐใฏ $O(2^i)$ ใชใฎใงใ€ๅŒใ˜ๆถˆ่ฒปๅ›žๆ•ฐใชใ‚‰ $i$ ใŒๅคงใใ„ใ‚‚ใฎใงๆถˆ่ฒปใ™ใ‚‹ๆ–นใŒ $B$ ใŒๅคงใใใชใ‚‹ใ€‚

ARC 147-A

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

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

std::multiset<Num> ใซๆ•ฐๅญ—ใ‚’ใ™ในใฆๅ…ฅใ‚Œใฆใ€ ๆœ€ๅฐๅ€คใ‚’ std::multiset::begin() ใ€ๆœ€ๅคงๅ€คใ‚’ std::multiset::rbegin() ใงๅ–ใ‚Šๅ‡บใ—ใฆใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚Œใฐ่งฃใ‘ใ‚‹ใ€‚ $A&gt;1$ ใชใฎใงไธ€ๅ›žใฎๆ“ไฝœใงๅฟ…ใšๆœ€ๅคงๅ€คใฏๅŠๅˆ†ไปฅไธ‹ใซใชใ‚‹ใ€‚

ARC 147-B

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

ๅถๆ•ฐใจๅฅ‡ๆ•ฐใซๅˆ†ใ‘ใ‚‹ใ€‚

่ชฌๆ˜Žใฎ้ƒฝๅˆไธŠ 0-based indexing ใ‹ใค $P-1$ ใจใ™ใ‚‹ใ€‚ใ‚„ใ‚ŠใŸใ„ใ“ใจใฏใ€ๅ…ˆ้ ญใ‹ใ‚‰ $i$ ็•ช็›ฎใซ่ฆ็ด  $i$ ใ‚’ๆŒใฃใฆใใ‚‹ใ‚ˆใ†ใซใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใ™ใ‚‹ใ“ใจใงใ‚ใ‚‹ใ€‚ $P = (0,...,N-1), N \leq 400$ ใชใฎใงใ€ใ‚ใ‚‹ๆ•ฐๅญ—ใŒใฉใ“ใซใ‚ใ‚‹ใ‹ใƒ†ใƒผใƒ–ใƒซใ‚’ไฝœใ‚‹ๅฟ…่ฆใฏใชใใ€ $P$ ใ‚’ๅ…จๆŽข็ดขใ—ใฆใ‚‚้–“ใซๅˆใ†ใ€‚

$B$ ใ‚’็ฉๆฅต็š„ใซๆดป็”จใ™ใ‚‹ใซใฏใ€ $P$ ใฎๅถๆ•ฐ็•ช็›ฎใซๅถๆ•ฐใŒ้ †ไธๅŒใงไธฆใณใ€ $P$ ใฎๅฅ‡ๆ•ฐ็•ช็›ฎใซๅฅ‡ๆ•ฐใŒ้ †ไธๅŒใงไธฆใถใ‚ˆใ†ใซใ™ใ‚‹ใ€‚ใใ†ใ™ใ‚ŒใฐๅพŒใฏๆœ€ไฝŽ้™ใฎ $A$ ใ‚’ไฝฟใˆใฐใ‚ˆใ„ใ€‚

$P_i : i \in [0,N-1]$ ใซใคใ„ใฆใ€ $i$ ็•ช็›ฎใฎ่ฆ็ด  $P_i$ ใฎๅถๅฅ‡ใŒ $i$ ใจ็•ฐใชใฃใฆใ„ใŸใ‚‰ใ€ $P_j : j \in [i+1,N-1]$ ใ‹ใ‚‰ๅถๅฅ‡ใŒไธ€่‡ดใ™ใ‚‹ๆœ€ๅฐใฎ $j$ ใ‚’่ฆ‹ใคใ‘ใฆๆŒใฃใฆใใ‚‹ใ€‚ $j - i$ ใŒๅฅ‡ๆ•ฐใชใ‚‰ $A : j-1$ ใ‚’ไธ€ๅ›žๅฎŸ่กŒใ—ใฆ $j$ ใ‚’ไธ€ๆธ›ใ‚‰ใ™ใ€‚ใใฎๅพŒ $B : j - 2$ ใ‚’็นฐใ‚Š่ฟ”ใ—ๅฎŸ่กŒใ—ใฆใ€ $P_i$ ใฎๅถๅฅ‡ใ‚’ $i$ ใจใใ‚ใˆใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $j$ ใฏๅฟ…ใš่ฆ‹ใคใ‹ใ‚‹ใ€‚

ใ“ใ†ใ—ใฆ $i$ ็•ช็›ฎใฎ่ฆ็ด  $P_i$ ใฎๅถๅฅ‡ใŒใใ‚ใฃใŸใ‚‰ใ€ $i$ ใŒๅถๆ•ฐใ€ $i$ ใŒๅฅ‡ๆ•ฐใใ‚Œใžใ‚Œใซใคใ„ใฆใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใ™ใ‚‹ใ€‚ๅฎŸ้š›ใซ $P$ ใ‚’ใ‚ฝใƒผใƒˆใ—ใชใŒใ‚‰ๆ“ไฝœๅฑฅๆญดใ‚’ๆฎ‹ใ—ใ€ๆ“ไฝœๅฑฅๆญดใ‚’ๆœ€ๅพŒใซๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ARC 147-C

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

ใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚‹ใ€‚

ใ™ในใฆใฎ $L,R$ ใฎไฝ็ฝฎใฎ้‡่ค‡็„กใ—้›†ๅˆ $S$ ใ‚’ๆฑ‚ใ‚ใ€ $S$ ใซไบบใ‚’ๅฏ„ใ›ใ‚‹ใ‚ˆใ†ใซใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚‹ใ€‚ไฝ็ฝฎใ‚’ๅทฆ็ซฏ $P = min(S)$ ใงๆฑ‚ใ‚ใ€็ดฏ็ฉๅ’Œใ‚’ไฝฟใฃใฆ็ญ”ใˆใฎๅˆๆœŸๅ€ค $T$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

$P$ ใ‚ˆใ‚ŠๅทฆๅดใฎๅŒบ้–“ใซใ„ใ‚‹ไบบๆ•ฐใ‚’ $l=0$ , $P$ ใ‚’ๅซใ‚€ๅŒบ้–“ใซใ„ใ‚‹ไบบๆ•ฐใ‚’ $m=0$ ใ€ $P$ ใ‚ˆใ‚ŠๅณๅดใฎๅŒบ้–“ใซใ„ใ‚‹ไบบๆ•ฐใ‚’ $r=N$ ใงๅˆๆœŸๅŒ–ใ™ใ‚‹ใ€‚ๅŒบ้–“ใฎๅ‡บๅ…ฅใ‚Šใ‚’ใ„ใ‚‚ใ™ๆณ•ใฎ่ฆ้ ˜ใงใ‚ซใ‚ฆใƒณใƒˆใ—ใฆใŠใใ€‚ๆ›ดๆ–ฐๅพŒใฎ $P$ ใ€ๆ›ดๆ–ฐๅ‰ใฎ $P$ ใ‹ใ‚‰ใฎๅทฎ $W$ ใซใคใ„ใฆใ€ๅ‡บๅ…ฅใ‚ŠใซๅŸบใฅใ„ใฆไปฅไธ‹ใฎ้€šใ‚Š็ญ”ใˆใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

  • $T$ ใซ $l \times m \times W$ ใ‚’่ถณใ™ใ€‚ใ“ใ‚Œใฏ $P$ ใ‚ˆใ‚ŠๅทฆใฎๅŒบ้–“ใงใ€ๅณ็ซฏใซๅผตใ‚Šไป˜ใ„ใฆใ„ใ‚‹ไบบใฎไธๆบ€ๅบฆใŒไธŠๆ˜‡ใ™ใ‚‹ๅˆ†ใงใ‚ใ‚‹ใ€‚
  • $T$ ใ‹ใ‚‰ $r \times m \times W$ ใ‚’ๅผ•ใใ€‚ใ“ใ‚Œใฏ $P$ ใ‚ˆใ‚ŠๅณใฎๅŒบ้–“ใงใ€ๅทฆ็ซฏใซๅผตใ‚Šไป˜ใ„ใฆใ„ใ‚‹ไบบใฎไธๆบ€ๅบฆใŒๆธ›ๅฐ‘ใ™ใ‚‹ๅˆ†ใงใ‚ใ‚‹ใ€‚
  • $P$ ใ‹ใ‚‰ๅ‡บใŸไบบๆ•ฐใ‚’ $x$ ใจใ—ใฆใ€ $l$ ใซ $x$ ใ‚’่ถณใ—ใ€ $m$ ใ‹ใ‚‰ $x$ ใ‚’ๅผ•ใ
  • $P$ ใงๅ…ฅใฃใŸไบบๆ•ฐใ‚’ $y$ ใจใ—ใฆใ€ $m$ ใซ $y$ ใ‚’่ถณใ—ใ€ $r$ ใ‹ใ‚‰ $y$ ใ‚’ๅผ•ใ

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

ๅ…ฌๅผ่งฃ่ชฌใฏใ‚‚ใฃใจใ‚จใƒฌใ‚ฌใƒณใƒˆใงใ‚ใ‚‹ใ€‚

ARC 148-A

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

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

ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใŒใจใฆใ‚‚ๆ‰ฑใ„ใฅใ‚‰ใ„ใ€‚

$M \geq 2$ ใฎๆ‰ฑใ„ใŒใ‹ใชใ‚Šๅคงๅค‰ใงใ‚ใ‚‹ใ€‚้ †ใ‚’่ฟฝใฃใฆ่€ƒใˆใ‚‹ใ€‚

  1. $A$ ใฎ้‡่ค‡ใฏใ™ในใฆๆŽ’้™คใ—ใฆใ‹ใ‚‰ใ€ๆ˜‡้ †ใซไธฆใณๆ›ฟใˆใ‚‹
  2. $A$ ใ‹ใ‚‰0ใ‚’้™คใ„ใฆใ€0ใŒใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ ใ‘ๆ•ฐใˆใ‚‹
  3. $A$ ใซ2ไปฅไธŠใฎๆ•ฐใŒใ‚ใ‚‹ใ‹ใฉใ†ใ‹ใ‚’ๆ•ฐใˆใ‚‹
  4. $A$ ใŒ็ฉบใคใพใ‚Š0ใ ใ‘ใชใ‚‰็ญ”ใˆใฏ 1 ใงใ‚ใ‚‹ใ€‚
  5. $A$ ใŒใ™ในใฆ2ๆœชๆบ€ใชใ‚‰ใ€ 0ใจ1ใ‹ใ‚‰ใชใ‚‹ใจใใฎ็ญ”ใˆใฏ 2 1ใ ใ‘ใ‹ใ‚‰ใชใ‚‹ใจใใฎ็ญ”ใˆใฏ 1 ใงใ‚ใ‚‹ใ€‚ใ“ใ‚ŒใŒๆœ€ๅพŒใพใงๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚
  6. $A$ ใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒ2ไปฅไธŠใชใ‚‰ๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใฎใงใ€็ญ”ใˆใฏ 1 ใงใ‚ใ‚‹ใ€‚
  7. $A$ ใฎใ™ในใฆใฎๅ€คใซใคใ„ใฆๆœ€ๅฐๅ€ค $a$ ใจใฎๅทฎๅˆ†ใ‚’ๅ–ใ‚Šใ€0ไปฅๅค–ใฎๅทฎๅˆ†ใ‚’ $B$ ใจใ™ใ‚‹ใ€‚ $B$ ใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใ‚’ๅ–ใ‚‹ใ€‚ๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒ2ไปฅไธŠใ‹ใคใ‚‚ๅ…ƒใ€…ใฎ $A$ ใซ0ใŒใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ 1 ใ€ใใ†ใงใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ 2 ใงใ‚ใ‚‹ใ€‚

ๆœ€ๅพŒใซใคใ„ใฆ่ชฌๆ˜Žใ™ใ‚‹ใ€‚ $g=GCD(B)$ ใจใ—ใฆใ€ $(A=B+a) \quad mod \quad g$ ใจ $a \quad mod \quad g$ ใ‚’็ญ‰ใ—ใใ—ใ‚ˆใ†ใจใ„ใ†็›ฎ่ซ–่ฆ‹ใงใ‚ใ‚‹ใ€‚ $g \geq 2$ ใชใ‚‰้ž0ใฎ $A$ ใซใคใ„ใฆใฏ็ญ‰ใ—ใใชใ‚‹ใฎใงใ€

  • $A$ ใŒ0ใซใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ 1
  • $A$ ใŒ0ใซใ‚ใ‚Œใฐ็ญ”ใˆใฏ 2 ใงใ‚ใ‚‹ใ€‚ $a$ ใ‚’ $g$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใชใ‚‰ใ€ใใ‚‚ใใ‚‚ $A$ ใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒ $g$ ใงใ‚ใ‚‹ใ€‚

ใใ†ใงใชใ‘ใ‚Œใฐใ“ใฎ็›ฎ่ซ–่ฆ‹ใฏไธŠๆ‰‹ใใ„ใ‹ใชใ„ใฎใง็ญ”ใˆใฏ 2 ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ $A$ ใฎๅทฎใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใ‚’ๅ–ใฃใฆใŠใ‚Š็ฐกๆฝ”ใ ใŒใ€ $A$ ใฎๅทฎใฎๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒ0ใจ1ใฎใจใใฎๆ‰ฑใ„ใ‚’ๆ€ใ„ใคใใฎใŒๅคงๅค‰ใงใ‚ใ‚‹ใ€‚ๅฎŸ่ฃ…ใ—ใŸใ‚‚ใฎใŒ ใ“ใกใ‚‰

ARC 148-B

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

d=0 , p=1 ใจ็ฝฎใๆ›ใˆใ‚‹ใจๅˆ†ใ‹ใ‚Šใ‚„ใ™ใ„ใ€‚ dp ใฏๅ‹•็š„่จˆ็”ปๆณ•ใงใชใใ€ๆ–‡ๅญ—ใ‚’180ๅบฆๅ›ž่ปขใ•ใ›ใ‚‹ใจไผผใฆใ„ใ‚‹ใจใ„ใ†ใ“ใจใงใ‚ใ‚‹ใ€‚

$(L,R)$ ใ‚’็ฝฎใๆ›ใˆใ‚‹ใจใใ€ $L$ ใจใ—ใฆใฏๆœ€ๅทฆใฎ p ใซใ™ใ‚‹ใฎใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใ„ p ใ‚’็ฝฎใๆ›ใˆใฆใ‚‚่พžๆ›ธ้ †ๆœ€ๅฐใซใฏใชใ‚‰ใชใ„ใ€‚ p ใŒใชใ„ใจใ„ใ†ใ“ใจใฏ $S$ ใซใฏ d ใ—ใ‹ใชใ„ใฎใงใ€ๆ“ไฝœใ—ใชใ„ใง $S$ ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใฎใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚

$R$ ใ‚’ใฉใ†ใ™ใ‚‹ใ‹ใฏ็ทๅฝ“ใŸใ‚Šใ™ใ‚Œใฐใ„ใ„ใ€‚ใคใพใ‚Š $[L,R]$ ใ‚’ๆ“ไฝœใ—ใŸๆ–‡ๅญ—ๅˆ—ใ‚’ๆœ€ๅคง $N$ ็จฎ้กžไฝœใ‚Šใ€ใใฎไธญใ‹ใ‚‰่พžๆ›ธ้ †ๆœ€ๅฐใฎใ‚‚ใฎใ‚’็ญ”ใˆใ‚‹ใ€‚่จˆ็ฎ—้‡ใฏ $N^2$ ใชใฎใงTLEใ—ใชใ„ใ€‚

ARC 148-C

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

ใ‚ชใ‚คใƒฉใƒผใƒ„ใ‚ขใƒผใง้ ‚็‚นใซ้ †ๅบไป˜ใ‘ใ—ใฆๅŒบ้–“ๅ‡ฆ็†ใ€ใจใ„ใ†ใฎใ‚’ๆ€ใ„ใคใ„ใŸใŒใพใ‚‹ใฃใใ‚Š้–“้•ใฃใฆใ„ใฆ3ๆ™‚้–“20ๅˆ†ๆบถใ‹ใ—ใŸใ€‚

ๆ€ใ„ใคใ„ใŸๆญฃ่งฃใฏใ€่ฆชๅญ้ ‚็‚นใงใฎ่กจ่ฃใŒ้•ใ†็Šถๆณใ‚’ๆ•ฐใˆใ‚‹ใ€ใจใ„ใ†ใ‚‚ใฎใงใ‚ใ‚‹ใ€‚ๆ นใ‹ใ‚‰้ †ใซไปฅไธ‹ใฎgreedyใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚

้ ‚็‚น $v$ ใฎ่ฃ่กจใŒใ€ $S$ ใจไธ€่‡ดใ™ใ‚‹ใชใ‚‰ไฝ•ใ‚‚ใ—ใชใ„ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐๅญใ‚‚ๅซใ‚ใฆ่ฃ่กจใ‚’ๅ่ปขใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ๆ นใ‹ใ‚‰่‘‰ใซๅ‘ใ‹ใฃใฆ็นฐใ‚Š่ฟ”ใ™ใ€‚ใ“ใฎๅ่ปขๅ›žๆ•ฐใŒใ€ใƒœใ‚ฟใƒณใ‚’ๆŠผใ™ๅ›žๆ•ฐใฎๆœ€ๅฐๅ€คใงใ‚ใ‚‹ใ€‚

ใ“ใฎๅ†ๅธฐใ‚’็›ดๆŽฅ็นฐใ‚Š่ฟ”ใ™ใจใ‚ฏใ‚จใƒชๅฝ“ใŸใ‚Š $O(N)$ ใฎ่จˆ็ฎ—้‡ใซใชใฃใฆใ—ใพใ†ใ€‚ใ‚ˆใฃใฆ $S$ ใซๅซใพใ‚Œใ‚‹้ ‚็‚นใ ใ‘ใซๆณจ็›ฎใ™ใ‚‹ใ€‚ไพฟๅฎœไธŠใ€้ ‚็‚น1ใฎ่ฆชใฏๅธธใซ่ฃๅ‘ใใจใ™ใ‚‹ใ€‚

  1. $v \in S$ ใฎ่ฆช $p$ ใŒ $S$ ใซๅซใพใ‚Œใ‚‹ใชใ‚‰ไฝ•ใ‚‚ใ—ใชใ„ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ่ฃ่กจ้•ใ„ใชใฎใงใƒœใ‚ฟใƒณใ‚’1ๅ›žๆŠผใ™ใ€‚
  2. ใจใ‚Šใ‚ใˆใš $v$ ใฎๅญ้ ‚็‚น้›†ๅˆ $C$ ใฎๆ•ฐ $|C|$ ๅ›žใ ใ‘ใƒœใ‚ฟใƒณใ‚’ๆŠผใ™ใ“ใจใซใ™ใ‚‹ใ€‚
  3. $u \in C$ ใชใ‚‰ใƒœใ‚ฟใƒณใ‚’ๆŠผใ•ใชใ„ใ“ใจใซใ™ใ‚‹ใฎใงใ€ใƒœใ‚ฟใƒณใ‚’ๆŠผใ™ๅ›žๆ•ฐใ‚’1ๆธ›ใ‚‰ใ™ใ€‚

ไธŠ่จ˜3ใซใคใ„ใฆใ€ $S$ ใซ $C$ ใŒๅซใพใ‚Œใ‚‹ใ‹ใ€ $C$ ใซ $S$ ใŒๅซใพใ‚Œใ‚‹ใ‹ใ€ใฉใกใ‚‰ใ‹่จˆ็ฎ—้‡ใฎๅฐ‘ใชใ„ๆ–นใ‚’ๅฎŸ่กŒใ™ใ‚‹ใ€‚ใใ†ใงใชใ„ใจTLEใ™ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฎไธ‹ใซใ‚ใ‚‹ๆ–นๆณ•ใจๅคงไฝ“ๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 149-A

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

็ท‘diffใŒ8ๅˆ†ๅฐ

ใ‚‚ใ—ใ‹ใ—ใŸใ‚‰TLEใ™ใ‚‹ใจๆ€ใฃใŸใ‚‰10msใ ใฃใŸใ€‚

$modM$ ใซใŠใ„ใฆใ€ $X = 1,11,111,...$ ใฏ10ๅ€ใ—ใฆ1่ถณใ›ใฐใ„ใ„ใ€‚ไธ€ๆกๅข—ใ‚„ใ—ใŸใ‚‰ $2..9$ ๅ€ใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใŒ $modM$ ใชใ‚‰ๆกๆ•ฐใจๆ•ฐๅ€คใฎ็ต„ใŒ็ญ”ใˆใซใชใ‚Šใˆใ‚‹ใ€‚ใใฎ่พžๆ›ธ้ †ใซใŠใ‘ใ‚‹ๆœ€้ซ˜ๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚่ฉฒๅฝ“ใ™ใ‚‹ใ‚‚ใฎใŒ็„กใ‘ใ‚Œใฐ -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

$modM$ ใฏใƒฉใ‚คใƒ–ใƒฉใƒชใงไฝœใ‚Œใ‚‹ใ€‚

using mint = atcoder::modint;
atcoder::modint::set_mod(m);

ARC 149-B

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

่จผๆ˜Žใ›ใš็›ด่ฆณใงACใ—ใŸใ€‚

้šฃๅŒๅฃซใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚Œใฐใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใงใใ‚‹ใฎใงใ€ $A$ ใจ $B$ ใฎๅฐ‘ใชใใจใ‚‚ไธ€ๆ–นใฏๆ˜‡้ †ใซใงใใ‚‹ใ€‚ $A$, $B$ ใใ‚Œใžใ‚ŒๅŒใ˜ๅ€คใฏไบŒๅบฆๅ‡บ็พใ—ใชใ„ใ“ใจใ‹ใ‚‰ใ€ $A$ ใ‚’ใ‚ฝใƒผใƒˆๆธˆใชใ‚‰LISใฏ $N$ ใงใ‚ใ‚‹ใ€‚ $A$ ใฎใ‚ฝใƒผใƒˆใซ้€ฃๅ‹•ใ—ใฆ $B$ ใ‚’ $B^{'}$ ใซไธฆใณๆ›ฟใˆใŸใจใ—ใฆใ€ $LIS(A) + LIS(B) = N + LIS(B^{'})$ ใงใ‚ใ‚‹ใ€‚ๅŒๆง˜ใซใ—ใฆ $N + LIS(A^{'})$ ใ‚’ๆฑ‚ใ‚ใ‚‰ใ‚Œใ‚‹ใ€‚ไธก่€…ใฎๆœ€ๅคงๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ใ“ใ†ใชใ‚‹็†็”ฑใ‚’่€ƒๅฏŸใ™ใ‚‹ใ€‚

ไพฟๅฎœไธŠ $A_0 = 0$ ใจใ—ใฆใ€ๅ˜่ชฟๅข—ๅŠ ใŒ้€”ๅˆ‡ใ‚Œใ‚‹็‚น $A_{i} &lt; A_{i+1} \quad for \quad i=0..K \land A_{K+1} &gt; A_{K+2}$ ใ‚’ๆบ€ใŸใ™ $K$ ใŒใ‚ใ‚‹ใจใ™ใ‚‹ใ€‚ $A_{K+2} &lt; A_{j} , j \in [1,K+1]$ ใชใ‚‹ $j$ ใฎ็›ดๅ‰ใซ $A_{K+2}$ ใ‚’ใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใง็งปๅ‹•ใงใใ‚‹ใ€‚ใ“ใ‚Œใซใ‚ˆใ‚Š $LIS(A)$ ใ‚’ๅฟ…ใš1ๅข—ๅŠ ใ•ใ›ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ $B$ ใฎๅฏพๅฟœใ™ใ‚‹ๆทปใˆๅญ—ใซใคใ„ใฆใ‚‚็งปๅ‹•ใ—ใฆ $B^{'}$ ใซใ™ใ‚‹ใŒใ€ใ“ใฎใจใ $LIS(B^{'})$ ใฏ1ๆธ›ใ‚‹ใ‹ใ€ๅค‰ใ‚ใ‚‰ใชใ„ใ‹1ๅข—ใˆใ‚‹ใ‹ใ„ใšใ‚Œใ‹ใงใ‚ใ‚‹ใ€‚่ถณใ—ๅผ•ใใงใ€LISใฏๅค‰ใ‚ใ‚‰ใชใ„ใ‹ๅข—ใˆใ‚‹ใ‹ใฉใกใ‚‰ใ‹ใชใฎใงใ€ $A$ ใ‚’ใƒใƒ–ใƒซใ‚ฝใƒผใƒˆใ—ใฆๅ˜่ชฟๅข—ๅŠ ใŒ้€”ๅˆ‡ใ‚Œใ‚‹็‚นใ‚’ๅณใซ็งปใ™ใ”ใจใซใ€ $LIS(A)+LIS(B^{'})$ ใฏๅข—ใˆใ‚‹ใ“ใจใฏใ‚ใฃใฆใ‚‚ๆธ›ใ‚‹ใ“ใจใฏ็„กใ„ใ€‚

ใ‚ˆใฃใฆ $A$ ๅ…จไฝ“ใŒๆ˜‡้ †ใซใชใ‚‹ใพใงใ‚ฝใƒผใƒˆใ™ใ‚Œใฐ $LIS(A) + LIS(B) = N + LIS(B^{'})$ ใซใชใ‚‹ใ€‚ๅŒๆง˜ใซ $B$ ๅ…จไฝ“ใŒๆ˜‡้ †ใซใชใ‚‹ใพใงใ‚ฝใƒผใƒˆใ™ใ‚Œใฐ $N + LIS(A^{'})$ ใซใชใ‚‹ใ€‚ๆœฌๅฝ“ใฏใ“ใ‚ŒใŒๆœ€้ฉ่งฃใงใ‚ใ‚‹ใ“ใจใ‚’่จผๆ˜Žใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใฎใ ใŒใ€่จผๆ˜Žใ‚’้ฃ›ใฐใ—ใฆใ—ใพใฃใŸใ€‚่จผๆ˜Žใฏๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹ใ€‚

ARC 149-C

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

ๅฅ‡ๆ•ฐใซๅฅ‡ๆ•ฐใ‚’่ถณใ™ใจๅถๆ•ฐใชใฎใง็ด ๆ•ฐใงใฏใชใ„ใ€ใจใ„ใ†ใ“ใจใซๆฐ—ใŒไป˜ใ„ใฆใ‹ใ‚‰ใŒ้•ทใ‹ใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ไธŠๅŠๅˆ†ใ‚’ๅฅ‡ๆ•ฐใ€ไธ‹ๅŠๅˆ†ใ‚’ๅถๆ•ฐใซๅˆ†ใ‘ใฆใ€ๅขƒ็•Œ็ทšใ‚’ใ„ใ„ๆ„Ÿใ˜ใซใ™ใ‚‹ใจ็ญ”ใˆใŒๅ‡บใ‚‹ใ€‚ใ“ใฎใ“ใจใ‚’ใ„ใใ‚‰่€ƒใˆใฆใ‚‚ๅˆ†ใ‹ใ‚‰ใšใ€ $N=4$ ใฎใƒฉใƒณใƒ€ใƒ ใช่งฃใ‚’ใŸใใ•ใ‚“ไฝœใฃใฆ็œบใ‚ใŸใ‚‰ๅฏŸใ™ใ‚‹ใ“ใจใŒใงใใŸใ€‚

$N$ ใŒๅถๆ•ฐใฎใจใใฏใ€ $3,6,9,12,15...$ ใ‚’ไธญๅคฎใฎ2ๅˆ—ใซไธฆในใฆใ„ใใ€‚ใ‚ˆใ‚Šๆญฃ็ขบใซใฏใ€ $N / 2$ ่กŒ็›ฎใซ $3(2i-1)$ ใ‚’ใ€ $1 + N / 2$ ่กŒ็›ฎใซ $6i$ ใ‚’ไธฆในใ‚‹ใ€‚ $N=4$ ใฎใจใใฏ้€”ไธญใง3ใฎๅ€ๆ•ฐใŒๅฐฝใใฆใ—ใพใ†ใŒใ€ๅ‡บๅŠ›ไพ‹ใ‚’ๆๅ‡บใ™ใ‚ŒใฐACใงใใ‚‹ใ€‚

odds
3  9 15 ...
6 12 18 ...
evens

$N$ ใŒๅฅ‡ๆ•ฐใฎใจใใฏไธญๅคฎใฎ่กŒใซใคใ„ใฆใ€ $1..\lceil N / 2 \rceil$ ๅˆ—ใพใงใฏๅฅ‡ๆ•ฐ $3(2i-1)$ ใ‚’็ฝฎใ„ใฆใใฎไธ‹ใฎ่กŒใซๅถๆ•ฐ $6i$ ใ‚’็ฝฎใใ€‚ใใ‚Œไปฅ้™ใฎๅˆ—ใฏๅถๆ•ฐ $6i$ ใ‚’็ฝฎใ„ใฆใใฎไธŠใฎ่กŒใซๅฅ‡ๆ•ฐ $3(2i-1)$ ใ‚’็ฝฎใใ€‚ $N=5$ ใฎใจใใฏ้€”ไธญใง3ใฎๅ€ๆ•ฐใŒๅฐฝใใฆใ—ใพใ†ใฎใง5ใฎๅ€ๆ•ฐใซใคใ„ใฆ็ถšใใ‚’่กŒใ†ใŒ็ตๆžœ็š„ใซไธŠๆ‰‹ใใ„ใใ€‚

odds    24 10
3  9 15 21  5
6 12 18 evens

ๅพŒใฏๅŸ‹ใ‚ใฆใ„ใชใ„ใƒžใ‚นใซใ€ใพใ ไฝฟใฃใฆใ„ใชใ„ๅฅ‡ๆ•ฐใจๅถๆ•ฐใ‚’ๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹ใ€‚ใ“ใฎๆ–นๆณ•ใงใฏ $N=3$ ใฎ่งฃใ‚’ไฝœใ‚‹ใ“ใจใŒใงใใชใ„ใ€‚ $9! = 362880$ ใชใฎใงๅ…จๆŽข็ดขใ‹ใƒฉใƒณใƒ€ใƒ ใงๆฑ‚ใ‚ใ‚‹ใ€‚ $N=3$ ใซ่ฆๅ‰‡ๆ€งใŒ่ฆ‹ใ„ใ ใ›ใชใ„ใฎใงๆ‰‹ใ“ใšใฃใฆใ—ใพใฃใŸใ€‚

ARC 150-A

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

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

0 ใ‚’่ถ…ใˆใฆ 1 ใ‚’ใคใชใ’ใ‚‹ใ“ใจใฏใงใใชใ„ใฎใงใ€ 0 ใ‚’ๅซใพใš 1? ใ ใ‘ใงใƒฉใƒณใ‚’ไฝœใ‚‹ใ€‚ๆกไปถใ‚ˆใ‚Šใ€ 1 ใ‚’ๅซใ‚€ใƒฉใƒณใฏ้ซ˜ใ€…1ๅ€‹ใงใ‚ใ‚‹ใ€‚2ๅ€‹ไปฅไธŠใ‚ใฃใŸใ‚‰ No ใงใ‚ใ‚‹ใ€‚

ใใ‚Œใžใ‚Œใฎใƒฉใƒณใซใคใ„ใฆใ€ๆกไปถใ‚’ๆบ€ใŸใ™ๅง‹็‚นใ‚’่ชฟในใ€ใใฎใ‚ˆใ†ใชๅง‹็‚นใฎ็ทๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใƒฉใƒณใŒ $[L,R]$ ใฎใจใใ€

  • ใƒฉใƒณใฎ้•ทใ• $W = R - L + 1 &lt; K$ ใชใ‚‰่ฉฒๅฝ“ใ™ใ‚‹ๅง‹็‚นใฏใชใ„
  • ใƒฉใƒณใฎ้€ฃ็ถš้ƒจๅˆ† $[i,i+W] : L \leq i \leq (R-W+1)$ ใซใคใ„ใฆใ€ $[L,i)$ ใจ $[i+1,R]$ ใซๅซใ‚€ 1 ใŒ็„กใ‘ใ‚Œใฐ $[i,i+W]$ ใฏๆกไปถใ‚’ๆบ€ใŸใ™ใ€‚ใ“ใ‚Œใฏ 1 ใฎๆ•ฐใฎ็ดฏ็ฉๅ’Œใ‹ใ‚‰ๆฑ‚ใ‚ใ‚‹ใ€‚

ใ“ใฎใ‚ˆใ†ใชๅง‹็‚นใŒ1ๅ€‹ใ ใ‘ใชใ‚‰ Yes ใ€ใใ†ใงใชใ‘ใ‚Œใฐ No ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นใŒ่ฆใ‚‰ใชใ„ใฎใงใ‚‚ใฃใจใ™ใฃใใ‚Šใ—ใฆใ„ใ‚‹ใ€‚

ARC 150-B

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

ACใงใใฆใ—ใพใฃใŸใ€‚

่‡ชๆ˜Žใช็Šถๆณใจใ—ใฆใ€ $A$ ใง $B$ ใ‚’ๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใชใ‚‰็ญ”ใˆใฏ0ใ€ $A &gt; B$ ใชใ‚‰็ญ”ใˆใฏ $A - B$ ใงใ‚ใ‚‹ใ€‚ใใ‚Œไปฅๅค–ใฎ็Šถๆณใ‚’่€ƒใˆใ‚‹ใ€‚

$A$ ใ‚’ใฉใ‚Œใ ใ‘ๅข—ใ‚„ใ™ใ‹ใซใคใ„ใฆ $X = 0..10^{6}$ ใ‚’ๅ…จๆŽข็ดขใ™ใ‚‹ใจๆฑบใ‚ใ‚‹ใ€‚ใ“ใฎใจใใ€ $B + Y$ ใ‚’ $A + X$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚‹ใจใใฎ็ญ”ใˆใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ไปฅไธ‹ $Z = A + X$ ใจใ™ใ‚‹ใ€‚

  • $A$ ใ ใ‘ๅข—ใ‚„ใ™ใชใ‚‰ใ€ $B - Z$
  • $B$ ใ ใ‘ๅข—ใ‚„ใ™ใชใ‚‰ใ€ $(Z - B mod Z) mod Z$
  • $D = \lfloor B / Z \rfloor$ ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใฏ $B$ ใŒ $Z$ ใฎ $D$ ๅ€ไปฅไธ‹ใชใฎใงใ€ $X,Y$ ใ‚’ๅข—ใ‚„ใ—ใฆ $D$ ๅ€ใซใ—ใŸใ„ใจใ„ใ†ๆ„ๅ›ณใŒใ‚ใ‚‹ใ€‚
  • $A$ ใฏ $A^{'} = \lfloor (B + D - 1) / D \rfloor$ ใซๅข—ใˆใ‚‹ใ€‚ $B$ ใฏ $B^{'} = A^{'} \times D$ ใซๅข—ใˆใ‚‹ใ€‚ใ‚ˆใฃใฆใ“ใฎใจใใฎ $X+Y$ ใฏใ€ $X + A^{'} - A + B^{'} - B$ ใงใ‚ใ‚‹ใ€‚
  • ใ™ในใฆใฎ $i$ ใซใคใ„ใฆใ€ใ“ใฎใ‚ˆใ†ใชๅ€คใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ใ•ใฆๅ…จๆŽข็ดขใฎ็ฏ„ๅ›ฒใŒ $X = 0..10^{6}$ ใงใ‚ˆใ„ใฎใ‹ใ€ใŒๅ•้กŒใจใชใ‚‹ใ€‚ $A,B \leq M = {10^9}$ ใงใ‚ใ‚Šใ€ $\sqrt{M}$ ไปฅไธ‹ใ‚’ๅ…จๆŽข็ดขใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ $B = M$ ใจใ—ใฆ $A$ ใซใคใ„ใฆ่€ƒใˆใ‚‹ใ€‚

  • $A \leq M$ ใชใ‚‰ใ€ $A^{'} - A \leq M$ ใซใชใ‚‹ใฎใง $A$ ใฎๆŽข็ดข็ฏ„ๅ›ฒใ‚’็ถฒ็พ…ใงใใ‚‹
  • $A &gt; M$ ใชใ‚‰ใ€ $D \leq M$ ใซใชใ‚‹ใฎใง $B$ ใฎๆŽข็ดข็ฏ„ๅ›ฒใ‚’็ถฒ็พ…ใงใใ‚‹ใฏใš(ใ“ใ“ใฎ่ซ–็†ใŒๅผฑใ„)

ๅ…ฌๅผ่งฃ่ชฌใฏไธŠ่จ˜ใฎใ“ใจใ‚’ใ€ๅนณๆ–นๅˆ†ๅ‰ฒใง็คบใ—ใฆใ„ใ‚‹ใ€‚

ARC 151-160

ARC 151-A

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

$S[i], T[i], 1 \leq i \leq N$ ใซใคใ„ใฆใ€ $d = T[i] - S[i]$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $d$ ใŒๅฅ‡ๆ•ฐใชใ‚‰ $S,T$ ใจใƒใƒŸใƒณใ‚ฐ่ท้›ขใŒ็ญ‰ใ—ใ„ $U$ ใ‚’ไฝœใ‚‹ใ“ใจใฏใงใใชใ„ใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ $d$ ใŒ่ฒ ใชใ‚‰ $S,T$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆ $d$ ใฎ็ฌฆๅทใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ€‚

$U$ ใฎไฝœใ‚Šๆ–นใจใ—ใฆใ€ๆœ€ๅˆใฏ $0$ ใงๅŸ‹ใ‚ใฆใ€ $S[i]=0, T[i]=1$ ใช $i$ ใซใคใ„ใฆ $U[i]$ ใ‚’ $d/2$ ๅ€‹ใ ใ‘ $1$ ใซใ™ใ‚‹ใ€‚ใ“ใ†ใ™ใ‚Œใฐใ€ $S,U$ ใฎใƒใƒŸใƒณใ‚ฐ่ท้›ขใ‚‚ $T,U$ ใฎใƒใƒŸใƒณใ‚ฐ่ท้›ขใ‚‚ $d/2$ ใซใชใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $i$ ใฏๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใ‹ใ‚‰ $N..1$ ็•ช็›ฎใ‚’ๆŽขใ—ใฆ่ฉฒๅฝ“ใ™ใ‚‹็ฎ‡ๆ‰€ใ‹ใ‚‰้ †ใซ้ธในใฐใ€่พžๆ›ธ้ †ใงๆœ€ๅฐใซใชใ‚‹ใ€‚

ARC 151-B

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

$\vec{i,P_i}$ ใจใ„ใ†ๆœ‰ๅ‘ใ‚ฐใƒฉใƒ•ใฏๅฟ…ใšใƒซใƒผใƒ—ใŒใ‚ใ‚‹ใฎใงใ€ใƒซใƒผใƒ—ๅ˜ไฝใงใพใจใ‚ใ‚‹ใ€‚

่ฆ็ด ใŒ1ใฎใƒซใƒผใƒ—ใคใพใ‚Š $\vec{i,i}$ ใฏใ€ $A_i$ ใซใฉใฎใ‚ˆใ†ใชๅ€คใ‚’่จญๅฎšใ—ใฆใ‚‚็ญ”ใˆใซๅฝฑ้Ÿฟใ—ใชใ„ใฎใง็„ก่ฆ–ใ™ใ‚‹ใ€‚ไปฅไธ‹ใƒซใƒผใƒ—้•ท2ไปฅไธŠใฎใƒซใƒผใƒ— $L$ ใ‚’ใ€ $min(L)$ ใฎๆ˜‡้ † $L_1, L_2, ... , L_K$ ใซไธฆในใ‚‹ใ€‚็‰นใซ $min(L_1) = 1$ ใงใ‚ใ‚‹ใ€‚

$L_1$ ใฎ่ฆ็ด ๆ•ฐใ‚’ $C_1 = |L_1|$ ใจใ—ใฆใ€ $L_1 = (A_{1,1}, A_{1,2}, ..., A_{1,C_1})$ ใซใคใ„ใฆ่€ƒใˆใ‚‹ใ€‚ $A_{L_1}$ ใฎ่ฆ็ด ใŒใ™ในใฆๅŒใ˜ใงใชใ้™้ †ใชใ‚‰ใ€ $A_1$ ใ‚’ๅซใ‚€ใƒซใƒผใƒ— $L_1$ ใซๅŸบใฅใ่พžๆ›ธ้ †ใŒ $A &lt; AP$ ใ‚’ๆฑบใ‚ใ€ $L_1$ ไปฅๅค–ใฎ่ฆ็ด ใฏ้ †ไฝใ‚’ๆฑบใ‚ใชใ„ใฎใงไปปๆ„ใจใ™ใ‚‹ใ€‚

ใ“ใฎใ‚ˆใ†ใช้™้ †ใฎ็ต„ใฟๅˆใ‚ใ›ใฏใ€ๅ…ˆ้ ญ $p$ ใŒ $M$ ้€šใ‚Š, ๅ…ˆ้ ญใ‚ˆใ‚Šๅฐใ•ใ„ๆ•ฐใŒ $p-1$ ้€šใ‚Šใ€ใใ‚Œไปฅๅค–ใฏไปปๆ„ใจใชใ‚‹้ †ๅˆ—็ต„ใฟๅˆใ‚ใ›ใชใฎใงใ€ $M(M-1)/2 \sum_{j=0}^{C_1-2} M^{j}$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ $L_1$ ไปฅๅค–ใฎๆ•ฐใฏไปปๆ„ใชใฎใงใ“ใ‚Œใซ $M^{N - L_1}$ ้€šใ‚Šใ‚’ๆŽ›ใ‘ใ‚‹ใ€‚

ไธ€่ˆฌใซ $L_i : i=1..K$ ใซใคใ„ใฆใ€ $min(L_i)$ ใ‚ˆใ‚Šๅทฆใฏ $A = AP$ ใง $A_{L_i}$ ใŒ $A &lt; AP$ ใ‚’ๆฑบใ‚ใ‚‹็Šถๆณใ‚’่€ƒใˆใ‚‹ใ€‚ $L_i$ ใฎ้ †ๅˆ—็ต„ใฟๅˆใ‚ใ›ใฏใ€ $M(M-1)/2 \times \sum_{j=0}^{C_i-2} M^{j}$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ $A_{L_{1..(i-1)}}$ ใ‚’ใใ‚Œใžใ‚ŒๅŒใ˜ๆ•ฐใซใใ‚ใˆใ‚‹ๆ–นๆณ•ใŒ $M$ ้€šใ‚Šใšใคใ€่จˆ $M^{i-1}$ ้€šใ‚Šใ‚ใ‚‹ใ€‚

$A_{L_{(i-1)..N}}$ ใฏไปปๆ„ใชใฎใง $R_i = \sum_{j=1}^{i} C_j$ ใจใ—ใฆ $M^{N - R}$ ้€šใ‚Šใ‚ใ‚‹ใ€‚ไฝตใ›ใฆ $M(M-1)/2 \times M^{N - R_i + i-1} \sum_{j=0}^{C_i-2} M^{j}$ = $M(M-1)/2 \times M^{N - R_i + i-1} (M^{C_i-1} - 1)/(M-1) = M^{N - R_i + i} (M^{C_i-1} - 1) / 2$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

$i=1..K$ ใซใคใ„ใฆใฎๅˆ่จˆใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌ2ใฏๅŒใ˜ใ“ใจใ‚’ใ‚‚ใฃใจ็ฐกๆฝ”ใซ่ฟฐในใฆใ€ๅ…ฌๅผ่งฃ่ชฌ1ใฏ ้–‰ใ˜ใŸๅผ ใงใ‚ใ‚‹ใ€‚

$1/2 \sum_{i=1}^{K} M^{N - R_i + i} (M^{C_i-1} - 1)$ = $1/2 (M^{N-C_1+1}(M^{C_1-1} - 1) + M^{N-C_1-C_2+2}(M^{C_2-1} - 1) + ... + M^{N-C_1-...-C_K+1}(M^{C_K-1} - 1))$ = $1/2 (M^{N} - M^{N-C_1+1} + M^{N-C_1+1} - M^{N-C_1-C_2+1} + ... - M^{N-C_1-...-C_K+K})$ = $(M^{N} - M^{K}) / 2$ ใ‹ใ‚‰ๅฐŽใ‘ใ‚‹ใ€‚

ARC 151-C

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

Grundyๆ•ฐใ ใจใ„ใ†ใ“ใจใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

ไปฅไธ‹ใฏๅธฐ็ดๆณ•ใงๅˆ†ใ‹ใ‚‹ใ€‚

  • ไธก็ซฏใ‚’ๅŒใ˜ๆ•ฐใงๅ›ฒใพใ‚Œใฆใ„ใ‚‹ใชใ‚‰ๅพŒๆ‰‹ๅฟ…ๅ‹
  • ไธก็ซฏใ‚’็•ฐใชใ‚‹ๆ•ฐใงๅ›ฒใพใ‚Œใฆใ„ใ‚‹ใชใ‚‰ๅพŒๆ‰‹ๅฟ…ๅ‹
  • ไธก็ซฏใจใ‚‚ๆ•ฐใงๅ›ฒใพใ‚Œใฆใ„ใชใ„ใชใ‚‰ใ€ๅฅ‡ๆ•ฐ้•ทใชใ‚‰ๅ…ˆๆ‰‹ๅฟ…ๅ‹ใงใ€ๅถๆ•ฐ้•ทใชใ‚‰ๅพŒๆ‰‹ๅฟ…ๅ‹

ใ—ใ‹ใ—็‰‡ๆ–นใฎ็ซฏใซๆ•ฐใŒใ‚ใ‚Šใ€ใ‚‚ใ†็‰‡ๆ–นใ‚’ๆ•ฐใงๅ›ฒใพใ‚Œใฆใ„ใชใ„ใจใใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ $mod3 = 1$ ใ ใจๆ€ใฃใŸใ‚Šใ€ไธก็ซฏใ‚’ๆœ€ๅˆใซๆŠ‘ใˆใŸใ‚Šใ—ใŸใŒใ€ๅ…จ็„ถ้•ใฃใŸใ€‚

่ฉณใ—ใ„่งฃ่ชฌใŒใ“ใฎ ่จ˜ไบ‹ ใซใ‚ใ‚‹ใ€‚

ARC 152-A

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

ๆœ€ใ‚‚ๅ†—้•ทใชไธฆใณๆ–นใฏใ€ใ“ใ‚Œใพใงไธฆใ‚“ใ ๅˆ—ใ‹ใ‚‰ไธ€ใคๆค…ๅญใ‚’็ฉบใ‘ใฆใ€ไธ€ไบบใพใŸใฏไบŒไบบ็ต„ใŒๅบงใ‚‹ใ€ใจใ„ใ†ๆ–นๆณ•ใงใ‚ใ‚‹ใ€‚ไธ€ไบบ็ต„ใฏใฉใ“ใงใ‚‚ๅบงใ‚Œใ‚‹ใŒใ€ไบŒไบบ็ต„ใŒๅบงใ‚Œใ‚‹ใ‹ใฉใ†ใ‹ใฏๅˆ—ใฎๅพŒใซ็ฉบใ„ใŸๆค…ๅญใŒ2ใคไปฅไธŠไธฆใ‚“ใงใ„ใ‚‹ใ‹ใฉใ†ใ‹ใงๆฑบใพใ‚‹ใ€‚ๅˆ—ใฎ้•ทใ• $len$ ใฏ $max(L, len + 1 + a_i)$ ใงๆ›ดๆ–ฐใ—ใ€็ฉบใ„ใŸๆค…ๅญใฏ $L-len$ ใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚‚่€ƒใˆๆ–นใฏไธŠ่จ˜ใจๅŒใ˜ใ ใŒใ€ๆœ€ๅพŒใฎ็ต„ใ ใ‘่€ƒใˆใฆใ„ใ‚‹ใ€‚

ARC 152-B

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

ไปŠๅ›žใ‚‚้’diffใฏใƒ€ใƒกใ‹ใจๆ€ใฃใŸใ‚‰ACใ—ใŸใ€‚

ๅ‡บ็™บ็‚นใฏใฉใ†ใ‚ใ‚Œใ€2ไบบใฎๆ—…ไบบใฏไปฅไธ‹ใฎ็ตŒ่ทฏใ‚’ใŸใฉใ‚‹ใ€‚ใใ†ใงใชใ„ๅ ดๅˆใฏใ€ๅ‡บ็™บ็‚นใ‚’ๅพŒใซใšใ‚‰ใ—ใ€็ต‚็€็‚น(ๅ‡บ็™บ็‚นใจๅŒใ˜)ใ‚‚ๅŒใ˜ใ ใ‘ๅพŒใซใšใ‚‰ใ™ใฎใงใ€็ตŒ้Žๆ™‚้–“ใจใ„ใ†่ฆณ็‚นใ‹ใ‚‰ใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚

  • 2ไบบใฏๅœฐ็‚น $a_A$ ใซใ‚ใ‚‹ไผ‘ๆ†ฉๆ‰€ใงๅ‡บไผšใ†ใ€‚
  • 2ไบบใฏๅœฐ็‚น $a_A$ ใ‚’ไบ’ใ„ใซๅˆฅๆ–นๅ‘ใซๅ‡บ็™บใ—ใ€ๅœฐ็‚น $a_B$ ใซใ‚ใ‚‹ไผ‘ๆ†ฉๆ‰€ใงๅ‡บไผšใ†ใ€‚ $A = B$ ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ—ใ€ใใ†ใงใฏใชใ„ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚
  • 2ไบบใฏๅœฐ็‚น $a_B$ ใ‚’ไบ’ใ„ใซๅˆฅๆ–นๅ‘ใซๅ‡บ็™บใ—ใ€ๅœฐ็‚น $a_C$ ใซใ‚ใ‚‹ไผ‘ๆ†ฉๆ‰€ใงๅ‡บไผšใ†ใ€‚ $A = C$ ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ— $B = C$ ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ—ใ€ใใ†ใงใฏใชใ„ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

ๅœฐ็‚น $B$ ใฎๅ€™่ฃœใฏใ€ $A$ ใ‹ใ‚‰่ฅฟใฎ็ซฏใ‚’ๆŠ˜ใ‚Š่ฟ”ใ—ใฆ่ท้›ข $L$ ใซ้”ใ—ใŸไป˜่ฟ‘ใงใ‚ใ‚‹ใ€‚ใคใพใ‚Š่ฅฟใฎ็ซฏใ‹ใ‚‰ $L - a_A$ ๅ‰ๅพŒใฎๆœ€ๅคงไบŒใ‹ๆ‰€ใงใ‚ใ‚‹ใ€‚็งปๅ‹•่ท้›ขใฎ้•ทใ„ๆ–นใŒ็Ÿญใ„ๆ–นใ‚’ๅพ…ใกใ€้•ทใ„ๆ–นใฎ็ตŒ้Žๆ™‚้–“ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚่ท้›ข $2L$ ใ‚’ไผ‘ๆ†ฉๆ‰€ใง2ๅˆ†ๅ‰ฒใ—ใฆใ€ๅˆ†ๅ‰ฒๅพŒใฎๅทฎใŒๆœ€ใ‚‚ๅฐใ•ใใชใ‚‹ใ‚ˆใ†ใชไผ‘ๆ†ฉๆ‰€ใ‚’้ธใถใ€ใจ่จ€ใˆใ‚‹ใ€‚

ๅœฐ็‚น $C$ ใฎๅ€™่ฃœใฏใ€ $B$ ใ‹ใ‚‰่ฅฟใฎ็ซฏใ‚’ๆŠ˜ใ‚Š่ฟ”ใ—ใฆ่ท้›ข $L$ ใซ้”ใ—ใŸไป˜่ฟ‘ใงใ‚ใ‚‹ใ€‚ใคใพใ‚Š่ฅฟใฎ็ซฏใ‹ใ‚‰ $L - a_B$ ๅ‰ๅพŒใฎๆœ€ๅคงไบŒใ‹ๆ‰€ใงใ‚ใ‚‹ใ€‚ไบŒไบบใฎๅ‹•ใใฏๅฏพ็งฐใคใพใ‚ŠAntsใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚็งปๅ‹•่ท้›ขใฎ้•ทใ„ๆ–นใŒ็Ÿญใ„ๆ–นใ‚’ๅพ…ใกใ€้•ทใ„ๆ–นใฎ็ตŒ้Žๆ™‚้–“ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

$a_A = a_1 .. a_N$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใจใ€ $B$ ใฏ2ใ‹ๆ‰€ใ€ $C$ ใฏ 4ใ‹ๆ‰€ใชใฎใงใ€ใ“ใ‚Œใ‚‰ใ‚’็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใจๆœ€ๅคง็ตŒ้Žๆ™‚้–“ใŒๅˆ†ใ‹ใ‚‹ใ€‚ๆฌกใซๅˆๆตใ™ใ‚‹ๅœฐ็‚นใฎๅ€™่ฃœใฏ std::lower_bound ใง่ฆ‹ใคใ‹ใ‚‹ใฎใงใ€่จˆ็ฎ—้‡ใฏ $O(Nlog(N))$ ใงใ‚ใ‚‹ใ€‚

ๅ…ฅๅŠ›ไพ‹2ใซ็›ธๅฝ“ใ™ใ‚‹็‰นๅˆฅใชๅ ดๅˆใจใ—ใฆใ€ $a_i + a_j = L$ ใจใชใ‚‹ไผ‘ๆ†ฉๆ‰€ใŒใ‚ใ‚‹ๅ ดๅˆใ€ $A = C = a_i, B = a_j$ ใŒๆˆ็ซ‹ใ—ใ€2ไบบใฏๅŒๆ™‚ใซใ“ใ‚Œใ‚‰ใฎๅœฐ็‚นใซๅˆฐ็€ใ™ใ‚‹ใฎใง็ญ”ใˆใฏ $2L$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚ŒใŒใƒ’ใƒณใƒˆใซใชใฃใฆใ„ใ‚‹ใ€‚

ๅŸบๆœฌ็š„ใซๅ…ฌๅผ่งฃ่ชฌใจๅŒใ˜่งฃใๆ–นใงใ‚ใ‚‹ใ€‚

ARC 153-A

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

4้‡ใƒซใƒผใƒ—

$S_1=S_2$ , $S_5=S_6$ , $S_7=S_9$ , ${S_3,S_4,S_8}$ ใฏใใ‚Œใžใ‚Œ 9,10,10,1000 ้€šใ‚Šใชใฎใงๅ…จๆŽข็ดขใ—ใฆใ‹ใ‚‰ใ‚ฝใƒผใƒˆใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

ARC 153-B

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

้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ ใจๆ€ใฃใฆไธ€ๆ™‚้–“ๅŠๆบถใ‹ใ—ใŸใ€‚

้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใงใฏใชใ„ใ€‚่กŒใจๅˆ—ใฏ็‹ฌ็ซ‹ใ—ใŸๆ“ไฝœใชใฎใงใ€่กŒใฎๆ“ไฝœใ ใ‘่€ƒใˆใ‚‹ใ€‚ๅฎŸ้š›ใซๆ‰‹ใ‚’ๅ‹•ใ‹ใ™ใจใ€ๅถๆ•ฐ็•ช็›ฎใฎๆ‰‹้ †ใจใ€ๅฅ‡ๆ•ฐ็•ช็›ฎใฎๆ‰‹้ †ใŒ็•ฐใชใ‚‹ใ“ใจใŒๅˆ†ใ‹ใ‚‹ใ€‚

0-based indexing ใงใ€ๅฅ‡ๆ•ฐ็•ช็›ฎใซ $p$ ใ€ใใฎ็›ดๅพŒใฎๅถๆ•ฐ็•ช็›ฎใซ $q$ ใฎใจใใ€ๅ…ƒใ€… $0..(h-1)$ ใจไธฆใ‚“ใงใ„ใŸใ‚‰ไปฅไธ‹ใฎใ‚ˆใ†ใซใชใ‚‹ใ€‚

  • ๅฅ‡ๆ•ฐ็•ช็›ฎ : $p..0, (h-1)..(p+1)$
  • ๅถๆ•ฐ็•ช็›ฎ
    • $q = p$ ใชใ‚‰ๆ˜Žใ‚‰ใ‹ใซ $0..(h-1)$
    • $q &lt; p$ ใชใ‚‰ $q..p, (p+1)..(h-1), 0..(q-1)$
    • $q &gt; p$ ใชใ‚‰ $q..(h-1), 0..p, (p+1)..(q-1)$

ใจใชใ‚‹ใฎใงใ€ๅถๆ•ฐ็•ช็›ฎใฏ $(h + q - p)$ ๅ›žใ ใ‘ๅทฆใซๅ›ž่ปขใ™ใ‚‹ใฎใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ใ‚ˆใฃใฆๅฅ‡ๆ•ฐ็•ช็›ฎใ‹ใ‚‰ๅถๆ•ฐ็•ช็›ฎใพใงใฎๅ›ž่ปขๅ›žๆ•ฐ $\sum_{i=1.. \lfloor Q/2 \rfloor} (a_{2i} - a_{2i-1})$ ใ‚’่ถณใ—ใฆๅ›ž่ปขใ—ใŸๅพŒใ€ $Q$ ใŒๅฅ‡ๆ•ฐใชใ‚‰ไธŠ่จ˜ใฎๆ“ไฝœใ‚’ใ™ใ‚‹ใจใ€ๅ…ƒใ€…ใฎ $0..(h-1)$ ่กŒใŒใฉใฎ่กŒใซใชใ‚‹ใ‹ใŒๅˆ†ใ‹ใ‚‹ใ€‚ๅˆ—ใ‚‚ๅŒๆง˜ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‹ใ‚‰็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚

ARC 153-C

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

ๆง‹็ฏ‰ๅ•้กŒใงใ‚ใ‚‹ใ€‚

ๅŽŸ็‚น $B = \sum_i A_i(i-1)$ ใจใ™ใ‚‹ใ€‚ $B=0$ ใชใ‚‰ $A_i = i-1$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐใ€ $i=1..N$ ใซใคใ„ใฆใ€ $A_1..A_i$ ใ‚’ใพใจใ‚ใฆ1ใšใคๆธ›ใ‚‰ใ™ใ‹ใ€ $A_i..A_N$ ใ‚’ใพใจใ‚ใฆ1ใšใคๅข—ใ‚„ใ™ใ‹่ฉฆใ—ใฆใ€ $B$ ใซใชใ‚‹ใ‹ใฉใ†ใ‹็ขบใ‹ใ‚ใ‚‹ใ€‚

ๅ‰่€…ใฏ $D = \sum A_{j=1}^i A_jx_j$ ใจใ—ใฆใ€ $B$ ใ‚’ $D$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‹ใค $B,D$ ใฎ็ฌฆๅทใŒๅŒใ˜ $BD &gt; 0$ ใงใ‚ใ‚‹ใ“ใจใŒๆกไปถใงใ‚ใ‚‹ใ€‚ใใ†ใชใ‚‰ใฐ $A_j = j-1-B/D (j \leq i)$ , $A_j = j-1 (j &gt; i)$ ใŒ่งฃใงใ‚ใ‚‹ใ€‚

ๅ‰่€…ใฏ $D = \sum A_{j=i}^N A_jx_j$ ใจใ—ใฆใ€ $B$ ใ‚’ $D$ ใงๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‹ใค $B,D$ ใฎ็ฌฆๅทใŒ็•ฐใชใ‚‹ $BD &lt; 0$ ใงใ‚ใ‚‹ใ“ใจใŒๆกไปถใงใ‚ใ‚‹ใ€‚ใใ†ใชใ‚‰ใฐ $A_j = j-1 (j &lt; i)$ $A_j = j-1-B/D (j \geq i)$ ใŒ่งฃใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏ็พŽใ—ใ„ใŒ็†่งฃใŒ่ฟฝใ„ไป˜ใ‹ใชใ„ใ€‚

ARC 154-A

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

ๆ•ฐๅญฆ

ๆ•ฐๅญ—ใฎ็ต„ ${C,D}, 0 \leq C &lt; D$ ใจ ${E,F}, 0 \leq E &lt; F$ ใŒใ‚ใ‚‹ใ€‚ $CE + DF$ ใจ $CF + DE$ ใฎใฉใกใ‚‰ใŒๅคงใใ„ใ ใ‚ใ†ใ‹ใ€‚ $CE + DF - CF - DE = (D - C)(F - E) &gt; 0$ ใ‚ˆใ‚Šใ€ $CE + DF &gt; CF + DE$ ใงใ‚ใ‚‹ใ€‚็›ด่ฆณ็š„ใซใฏใ€ๅคงใใ„็‰ฉๅŒๅฃซใฎ็ฉใจๅฐใ•ใ„็‰ฉๅŒๅฃซใฎ็ฉใฎๅ’Œใ‚ˆใ‚Šใ€ๅคงใใ„ใ‚‚ใฎใจๅฐใ•ใ„็‰ฉใ‚’ๆททใœใŸๆ–นใŒๅฐใ•ใใชใ‚‹ใŒใ€ๅฎŸ้š›ใซใใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ใชใฎใงใใ‚Œใžใ‚Œใฎๆกใซใคใ„ใฆ $A$ ใซๅฐใ•ใ„ๆ•ฐๅญ—ใ€ $B$ ใซๅคงใใชๆ•ฐๅญ—ใ‚’ๅฏ„ใ›้›†ใ‚ใ‚Œใฐใ‚ˆใ•ใใ†ใงใ‚ใ‚‹ใ€‚ $A,B$ ใฎ $10^i$ ๆก็›ฎใฎๆ•ฐๅญ—ใ‚’ $A_i,B_i$ ใจใ—ใŸใจใใ€ $A \times B$ ใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

$(A_{N-1}10^{N-1} + A_{N-2}10^{N-2} + A_{N-3}10^{N-3} + ...)(B_{N-1}10^{N-1} + B_{N-2}10^{N-2} + B_{N-3}10^{N-3} + ...)$

ไปฅไธ‹ใฎใ‚ˆใ†ใซๅŒใ˜ๆกใ‚’ๆŽ›ใ‘ใŸ้ƒจๅˆ†ใฏ $A,B$ ใฎๆ•ฐๅญ—ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ‚‚ๅค‰ใ‚ใ‚‰ใชใ„ใฎใง็„ก่ฆ–ใ—ใฆใ€

$A_{N-1}B_{N-1}10^{2(N-1)} + A_{N-2}B_{N-2}10^{2(N-2)} + A_{N-3}B_{N-3}10^{2(N-3)} + ...$

ไปฅไธ‹ใฎใ‚ˆใ†ใซ้•ใ†ๆกใ ใ‘ๆณจ็›ฎใ—ใฆใ€

$(A_{N-1}B_{N-2}+A_{N-2}B_{N-1})10^{2N-3} + (A_{N-1}B_{N-3}+A_{N-3}B_{N-1})10^{2N-4}+$ $((A_{N-1}B_{N-4}+A_{N-4}B_{N-1})+(A_{N-2}B_{N-3}+A_{N-3}B_{N-2}))10^{2N-5} + ...$

ไธŠใฎๆกใ‹ใ‚‰ $10^{2N-3}, 10^{2N-4}, ...$ ใฎ้ †ใซไฟ‚ๆ•ฐใŒๅฐใ•ใใชใ‚‹ใ‚ˆใ†ใซใ€ $A,B$ ใฎๅ„ๆกใ‚’ๆฑบใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚ใ“ใ‚Œใฏๆœ€ๅˆใซ่ฟฐในใŸ้€šใ‚Šใ€ $A$ ใซๅฐใ•ใ„ๆ•ฐๅญ—ใ€ $B$ ใซๅคงใใชๆ•ฐๅญ—ใ‚’ๅฏ„ใ›้›†ใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚

ARC 154-B

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

ๆœ‰้™ใ‚ชใƒผใƒˆใƒžใƒˆใƒณ

$S$ ใจ $T$ ใ‚’ๆง‹ๆˆใ™ใ‚‹ๅ„ๆ–‡ๅญ—ใฎๅ‡บ็พๅ›žๆ•ฐใŒ็•ฐใชใ‚‹ใจใใฏใ€ไธ€่‡ดใ•ใ›ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ $S,T$ ใ‚’ใใ‚Œใžใ‚Œใ‚ฝใƒผใƒˆใ—ใŸใ‚‚ใฎใŒ็ญ‰ใ—ใ„ใ‹ใฉใ†ใ‹่ชฟในใ‚Œใฐๅˆ†ใ‹ใ‚‹ใ€‚

$S$ ใฎๆœซๅฐพใ‹ใ‚‰้€ฃ็ถšใ™ใ‚‹้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ— $U = S[L,N]$ ใ‚’ๅ–ใฃใฆ $T$ ใ‚’ไฝœใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚ไปฅไธ‹ใฎๆกไปถใ‚’ๆบ€ใŸใ›ใฐใ‚ˆใ„ใ€‚

  • ๅ…ˆ้ ญใ‚’ $T[1]$ ใซใ™ใ‚‹ใ€‚ใคใพใ‚Š $S[1,L-1]$ ใซๅฐ‘ใชใใจใ‚‚ไธ€ใคใฎ $T[1]$ ใ‚’ๅซใ‚€
  • $S[1,L-1]$ ใฎๅ„ๆ–‡ๅญ—ใ‚’ $S_L$ ไปฅ้™ใซๆŒŸใฟ่พผใ‚ใ‚‹ใ€‚ใคใพใ‚Š $T$ ใฎ้€ฃ็ถšใ—ใชใ„้ƒจๅˆ†ๅˆ—ใ‚’ $T$ ใฎๆœซๅฐพใ‹ใ‚‰ๅ–ใฃใŸใจใใซใ€ $S[L,N]$ ใซไธ€่‡ดใ™ใ‚‹ใ€‚

ๅ‰ๅŠใฏ็ดฏ็ฉๅ’Œใงๆฑ‚ใพใ‚‹ใ€‚ๅพŒๅŠใฏๆœ‰้™ใ‚ชใƒผใƒˆใƒžใƒˆใƒณใงๆฑ‚ใพใ‚‹(ๅฐบๅ–ใ‚Šๆณ•ใจใ‚‚ใ„ใ†)ใ€‚ $T$ ใ‚’ๆœซๅฐพใ‹ใ‚‰ไธ€ๆ–‡ๅญ—ใšใค $S$ ใฎๆœซๅฐพใจๆฏ”่ผƒใ™ใ‚‹ใ€‚ใ‚ˆใ‚Šๅ…ทไฝ“็š„ใซใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  1. $T$ ใฎๆ–‡ๅญ—ใ‚’ๆŒ‡ใ™ใ‚ซใƒผใ‚ฝใƒซ $C_t = N$ ใงๅˆๆœŸๅŒ–ใ™ใ‚‹
  2. $S$ ใฎๆ–‡ๅญ—ใ‚’ๆŒ‡ใ™ใ‚ซใƒผใ‚ฝใƒซ $C_s = N$ ใงๅˆๆœŸๅŒ–ใ™ใ‚‹
  3. $T[C_t] = S[C_s]$ ใชใ‚‰ $C_s$ ใ‚’ไธ€ๆธ›ใ‚‰ใ™ใ€‚ใคใพใ‚Š $S$ ใฎไธ€่‡ด้ƒจๅˆ†ใ‚’ไธ€ๅ€‹ๅข—ใ‚„ใ™
  4. 3ใฎ็ตๆžœใซ้–ขใ‚ใ‚‰ใš $C_t$ ใ‚’ไธ€ๆธ›ใ‚‰ใ™ใ€‚ใคใพใ‚Š $T$ ใฎๆฌกใฎๆ–‡ๅญ—ใ‚’่ฆ‹ใ‚‹ใ€‚
  5. 3,4ใ‚’ $C_t = N..1$ ใพใง็นฐใ‚Š่ฟ”ใ™

$S$ ใ‚’ๆœซๅฐพใ‹ใ‚‰ $M$ ๆ–‡ๅญ—ๅ–ใฃใŸ้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใŒใ€ $T$ ใ‚’ๆœซๅฐพใ‹ใ‚‰ๅ–ใฃใŸ้€ฃ็ถšใ—ใชใ„้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใจไธ€่‡ดใ™ใ‚‹ใชใ‚‰ใ€ๅฎŸ้š›ใซ $i=1..M$ ๆ–‡ๅญ—ๅ–ใฃใฆใฟใ‚‹ใ€‚ $S[1..(N-M)]$ ใซ $T[1]$ ใŒๅซใพใ‚Œใ‚‹ใชใ‚‰ใใฎใ‚ˆใ†ใชๅ–ใ‚Šๆ–นใฏๅฏ่ƒฝใงใ‚ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใช $i$ ใซใคใ„ใฆใ€ $N-i$ ใฎๆœ€ๅฐๅ€คใŒใ‚ใ‚‹ใชใ‚‰ใใ‚ŒใŒ็ญ”ใˆใงใ‚ใ‚Šใ€ใใ†ใงใชใ‘ใ‚Œใฐ -1 ใซใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏไบŒๅˆ†ๆŽข็ดขใง่งฃใ„ใฆใŠใ‚Šใ€่ฒชๆฌฒๆณ•ใจใ‚‚ๆ›ธใ„ใฆใ‚ใ‚‹ใŒใ€ใใฎ่ฒชๆฌฒๆณ•ใŒไธŠ่จ˜ใฎ่งฃ็ญ”ใงใ‚ใ‚‹ใ€‚ $S$ ใจ $T$ ใ‚’ๆง‹ๆˆใ™ใ‚‹ๅ„ๆ–‡ๅญ—ใฎๅ‡บ็พๅ›žๆ•ฐใŒๅŒใ˜ใชใ‚‰่งฃใŒใ‚ใ‚‹ใ“ใจใ‚’ๅ…ฌๅผ่งฃ่ชฌใงใฏๅฐŽใ„ใฆใ„ใ‚‹ใŒใ€็งใฎ่งฃๆณ•ใงใฏใใฎใ“ใจใ‚’ไปฎๅฎšใ—ใชใ„ใ€‚

ARC 154-C

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

1ๅ€‹ใšใคๅ›ž่ปขใ—ใฆๆฏ”ในใ‚‹่ฒชๆฌฒๆณ•ใ€ไปฅไธŠใฎใ“ใจใŒๅ…จใๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

$A_i,B_j$ ใ‚’็ทšใง็ตใ‚“ใงไบคใ‚ใ‚‰ใชใ‘ใ‚Œใฐใ„ใ„ใ€ใจใ„ใ†ใ“ใจใฏๅฎŸใฏๆฐ—ใŒไป˜ใ„ใฆใ„ใŸใ€‚ใ—ใ‹ใ—ใ“ใ‚Œใ‚’ $O(N)$ ใงๆฑ‚ใ‚ใ‚ˆใ†ใจใ—ใฆๆ–นๆณ•ใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ $A$ ใŒ $B$ ใ‚’ๅŒ…ๅซใ™ใ‚‹ใ‹ๅฐบๅ–ใ‚Šๆณ•ใงๆฑ‚ใ‚ใ€ๅง‹็‚นใ‚’ๅ…จ้ƒจ่ฉฆใ™ใฎใง $O(N^2)$ ใงใ‚ใ‚‹ใ€‚

ARC 155-A

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

5ๆ™‚้–“36ๅˆ†ๆŽ›ใ‹ใฃใŸใ€‚

$S$ ใ‚’ๅ่ปขใ—ใŸใ‚‚ใฎใจ $R$ ใจใ™ใ‚‹ใ€‚ $K &lt; N$ ใฎใจใใ€ $S$ ใฎๅ…ˆ้ ญ $K$ ๆ–‡ๅญ—ใ‚’ $S2$ ใจใ—ใ€ $S2$ ใ‚’ๅ่ปขใ—ใŸใ‚‚ใฎใจ $R2$ ใจใ™ใ‚‹ใ€‚

$N = K$ ใชใ‚‰ $SR = RS$ ใชใ‚‰ Yes ใ€ใใ†ใงใชใ‘ใ‚Œใฐ No ใงใ‚ใ‚‹ใ€‚

$N &lt; K$ ใชใ‚‰ใ€ $SS^{'}$ ใซใคใ„ใฆ่€ƒใˆใ‚‹ใจ $S^{'}$ ใฎๆœซๅฐพ $N$ ๆ–‡ๅญ—ใฏ $R$ ใงใ‚ใ‚‹ใ€‚ $S^{'}S$ ใซใคใ„ใฆ่€ƒใˆใ‚‹ใจ $S$ ใฎๆœซๅฐพ $N$ ๆ–‡ๅญ—ใฏ $S$ ใงใ‚ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใซ $S$ ใฎๅ…ˆ้ ญใ‹ใ‚‰ $SRSR...$ ใจใ€ $S$ ใฎๆœซๅฐพใซๅ‘ใ‹ใฃใฆ $...SRS$ ใจๅŸ‹ใ‚ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚

ๅ‘จๆœŸ $C = \lfloor K / N \rfloor$ ใ‚’่€ƒใˆใ€ $C$ ใฎๅถๅฅ‡ใงๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹ใ€‚ $r$ ใ‚’ใ€ $K$ ใ‚’ $N$ ใงๅ‰ฒใฃใŸไฝ™ใ‚Šใจใ™ใ‚‹ใ€‚

$C$ ใŒๅถๆ•ฐใฎใจใใ€ $SS^{'}$ ใฏ $C / 2$ ๅ€‹ใฎ $SRS...$ ใ€้•ทใ• $r$ ใฎๆ–‡ๅญ—ๅˆ— $T$ ใ€ $C / 2$ ๅ€‹ใฎ $..SRS$ ใ‹ใ‚‰ใชใ‚‹ใ€‚ๅŒๆง˜ใซ $S^{'}S$ ใฏ $1 + C / 2$ ๅ€‹ใฎ $SRS...$ ใ€ $T$ ใ€ $C / 2 - 1$ ๅ€‹ใฎ $..SRS$ ใ‹ใ‚‰ใชใ‚‹ใ€‚ $T$ ใฏ $N,K,S$ ใ‹ใ‚‰ไธ€ๆ„ใซๆฑบใพใ‚‹ใฎใงใ€ $SS^{'}$ ใจ $S^{'}S$ ใŒๅ›žๆ–‡ใ‹ใฉใ†ใ‹ใฏ $T$ ๅ‘จ่พบใ‚’่ชฟในใ‚‹ใจๅˆ†ใ‹ใ‚‹ใ€‚

$T = S[(N-r+1)..N]$ ใซใ™ใ‚‹ใ€‚ $TR$ ใŒๅ›žๆ–‡ใงใ‚ใ‚‹ใ“ใจใŒ $SS^{'}$ ใ‚’ๅ›žๆ–‡ใซใ™ใ‚‹ๅฟ…่ฆๆกไปถใงใ‚ใ‚‹ใ€‚ $RT$ ใŒๅ›žๆ–‡ใงใ‚ใ‚‹ใ“ใจใŒ $S^{'}S$ ใ‚’ๅ›žๆ–‡ใซใ™ใ‚‹ๅฟ…่ฆๆกไปถใงใ‚ใ‚‹ใ€‚ไธกๆ–นใฎๆกไปถใ‚’ๆบ€ใŸใ›ใฐ Yes ใ€ใใ†ใงใชใ‘ใฐ No ใงใ‚ใ‚‹ใ€‚

$C$ ใŒๅฅ‡ๆ•ฐใฎใจใใ€ $SS^{'}$ ใฏ $(C + 1) / 2$ ๅ€‹ใฎ $SRS...$ ใ€้•ทใ• $r$ ใฎๆ–‡ๅญ—ๅˆ— $T$ ใ€ $(C + 1) / 2$ ๅ€‹ใฎ $..SRS$ ใ‹ใ‚‰ใชใ‚‹ใ€‚ $S^{'}S$ ใฏ $(C + 3) / 2$ ๅ€‹ใฎ $SRS...$ ใ€้•ทใ• $r$ ใฎๆ–‡ๅญ—ๅˆ— $T$ ใ€ $(C - 1) / 2$ ๅ€‹ใฎ $..SRS$ ใ‹ใ‚‰ใชใ‚‹ใ€‚

$T = S[(N-r+1)..N]$ ใซใ™ใ‚‹ใ€‚ $RST$ ใŒๅ›žๆ–‡ใงใ‚ใ‚‹ใ“ใจใŒ $S^{'}S$ ใ‚’ๅ›žๆ–‡ใซใ™ใ‚‹ๅฟ…่ฆๆกไปถใงใ‚ใ‚‹ใ€‚ $T$ ใŒๅ›žๆ–‡ใงใ‚ใ‚‹ใ“ใจใŒ $S^{'}S$ ใ‚’ๅ›žๆ–‡ใซใ™ใ‚‹ๅฟ…่ฆๆกไปถใงใ‚ใ‚‹ใ€‚ไธกๆ–นใฎๆกไปถใ‚’ๆบ€ใŸใ›ใฐ Yes ใ€ใใ†ใงใชใ‘ใฐ No ใงใ‚ใ‚‹ใ€‚

$N &lt; K$ ใชใ‚‰ใ€ $N$ ใจ $K$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ€ $S2,R2$ ใ‚’ $S,R$ ใซ่ชญใฟๆ›ฟใˆใ‚‹ใจๅŒๆง˜ใฎ็ตๆžœใซใชใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€ไธญๅคฎใงใฏใชใไธก็ซฏใ‹ใ‚‰ๆฑบใ‚ใ‚‹ใ“ใจใง $K &lt; 2N$ ใฎๅ ดๅˆใซๅธฐ็€ใ—ใฆ็ฐกๆฝ”ใซ่งฃใ‚’ๆฑ‚ใ‚ใฆใ„ใ‚‹ใ€‚

ARC 155-B

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

ใ“ใกใ‚‰ใฏ5ๆ™‚้–“ใงใฏใชใ30ๅˆ†ใง่งฃใ‘ใŸใ€‚

็ตถๅฏพๅ€คใ‚’ๅฑ•้–‹ใ—ใฆๆ•ฐ็›ด็ทšใ‚’ๆ›ธใใจใ€ $f_{S}(x) = 0$ ใจใชใ‚‹ใฎใฏ $a+b,a-b$ ใฎไบŒ็‚นใงใ€ไธก็‚นใ‹ใ‚‰็ตถๅฏพๅ€คใŒ1้›ขใ‚Œใ‚‹ใจ $f$ ใŒ1ๅข—ใˆใ‚‹ใ“ใจใŒๅˆ†ใ‹ใ‚‹ใ€‚ใคใพใ‚Šๆ•ฐ็›ด็ทšใซใŠใ„ใฆ $f(x)$ ใฎๅ€คใฏใ€0ใ‚’ๆœ€ๅฐๅ€คใจใ™ใ‚‹Wๅญ—ๅฝขใซใชใ‚‹ใ€‚

ๅˆๆœŸๅ€ค $A,B$ ใจใ‚ฏใ‚จใƒช1ใฎ $a,b$ ใ‹ใ‚‰ $a+b,a-b$ ใ‚’้›†ๅˆ $U$ ใซ่ฟฝๅŠ ใ™ใ‚‹ใ€‚ใ‚ฏใ‚จใƒช2ใซใŠใ„ใฆใ€ๅŒบ้–“ $[a,b]$ ใซ $U$ ใฎ่ฆ็ด ใŒใ‚ใ‚Œใฐ็ญ”ใˆใฏ0ใ€ใใ†ใงใชใ‘ใ‚Œใฐ $c \in U \land (- \infty, a]$, $d \in U \land [b, \infty)$ ใซใคใ„ใฆ $min(a-c,d-b)$ ใŒ็ญ”ใˆใงใ‚ใ‚‹(่ฉฒๅฝ“ใ™ใ‚‹ $c,d$ ใŒๅญ˜ๅœจใ—ใชใ„ๅ ดๅˆใฏ็„ก่ฆ–ใ™ใ‚‹ใŒใ€ๅฐ‘ใชใใจใ‚‚ไธ€ๆ–นใฏๅญ˜ๅœจใ™ใ‚‹)ใ€‚ใ“ใ‚Œใฏ std::set::lower_bound ใงๆฑ‚ใพใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏไธŠ่จ˜ใจๅ…จใๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 156-A

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

ไพ‹ๅค–ๅ‡ฆ็†

ๅ…ธๅž‹ไพ‹ใฏใ™ใๅˆ†ใ‹ใ‚‹ใŒใ€ไพ‹ๅค–ใ‚’็ถฒ็พ…ใ™ใ‚‹ใฎใŒ้›ฃใ—ใ„ใ€‚

ใพใšไธๅค‰้‡ใจใ—ใฆใ€่กจใซใชใฃใฆใ„ใ‚‹ใ‚ณใ‚คใƒณใฎๅถๅฅ‡ใŒใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰ใ‚ณใ‚คใƒณใ‚’2ๆžš่ฃ่ฟ”ใ™ใจใ€่กจใซใชใฃใฆใ„ใ‚‹ใ‚ณใ‚คใƒณใฎๆ•ฐใฏ $-2,0,2$ ๆžšใ—ใ‹ๅค‰ๅŒ–ใ—ใชใ„ใ‹ใ‚‰ใ ใ€‚ใชใฎใงๆœ€ๅˆใซ่กจใซใชใฃใฆใ„ใ‚‹ใ‚ณใ‚คใƒณใŒๅฅ‡ๆ•ฐๅ€‹ใชใ‚‰ใ€ใ‚ณใ‚คใƒณใ‚’ใ™ในใฆ่ฃๅ‘ใใซใ™ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚

ใ‚ณใ‚คใƒณใŒ3ๆžšใ‹ใค2ๆžšใŒ่กจใฎใจใใ€ 110 ใจ 011 ใŒ็„ก้™ใƒซใƒผใƒ—ใ™ใ‚‹ใฎใงใ‚ณใ‚คใƒณใ‚’ใ™ในใฆ่ฃๅ‘ใใซใ™ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚

ใ‚ณใ‚คใƒณใŒ4ๆžšใง 0110 ใฎใจใใ€ 0011 , 1010 , 0000 ใฎ3ๅ›žๆŽ›ใ‹ใ‚‹ใ€‚ใ“ใ‚ŒใŒๅˆ†ใ‹ใ‚‰ใชใใฆๅ•้กŒใ‚’่งฃใใฎใซ1ๆ™‚้–“ๆŽ›ใ‹ใฃใŸใ€‚ๅ…จๆŽข็ดขใ™ใ‚Œใฐใ‚ใ‹ใ‚‹ใ€‚

ไธŠ่จ˜ไปฅๅค–ใชใ‚‰ใ‚ณใ‚คใƒณใ‚’ใ™ในใฆ่ฃๅ‘ใใซใ™ใ‚‹ใ“ใจใŒใงใใ€ๅŸบๆœฌ็š„ใซใฏ่กจใซใชใฃใฆใ„ใ‚‹ใ‚ณใ‚คใƒณใฎๆ•ฐใฎๅŠๅˆ†ๅ›žใงใ‚ใ‚‹ใ€‚ใŸใ ใ—1ๅ›žไฝ™ๅˆ†ใซๆŽ›ใ‹ใ‚‹ๅ ดๅˆใŒใ‚ใ‚Šใ€ใใ‚Œใฏ่กจใซใชใฃใฆใ„ใ‚‹ใ‚ณใ‚คใƒณใŒ2ๆžšใ‹ใคไธฆใ‚“ใงใ„ใ‚‹ใจใใ€ใคใพใ‚Š 11..., ...11..., ...11 ใฎใจใใงใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰้šฃๆŽฅใ™ใ‚‹ใ‚ณใ‚คใƒณใ‚’ๅŒๆ™‚ใซ่ฃ่ฟ”ใ™ใ“ใจใฏใงใใชใ„ใฎใงใ€ไธ€ๅบฆ่ฃใซใชใฃใฆใ„ใ‚‹็ซฏใฎใ‚ณใ‚คใƒณใจ 1 ใ‚’่ฃ่ฟ”ใ—ใ€่กจใซใชใฃใŸ็ซฏใฎใ‚ณใ‚คใƒณใจๆฎ‹ใ‚Šใฎ 1 ใ‚’่ฃ่ฟ”ใ™ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

const std::string zeros{"0000"};

Num visit_dfs(const std::string& current, std::set<std::string>& seen, Num cnt) {
    if (current == zeros) {
        return cnt;
    }

    const size_t size = current.size();
    Num ans = 100000000;
    for(size_t l{0}; l<size; ++l) {
        for(size_t r{l+2}; r<size; ++r) {
            auto t = current;
            t.at(l) = (t.at(l) == '0') ? '1' : '0';
            t.at(r) = (t.at(r) == '0') ? '1' : '0';
            if (!seen.contains(t)) {
                seen.insert(t);
                ans = std::min(ans, visit_dfs(t, seen, cnt + 1));
                seen.erase(t);
            }
        }
    }

    return ans;
}

ARC 156-B

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

็ต„ใฟๅˆใ‚ใ›ใŒๅคงๅค‰ใ€‚

MEXใฏใ€ๆ•ฐๅ€คใฎ้›†ๅˆใซ็ฉดใŒใ‚ใ‚Œใฐไธ€ใคใšใคๅข—ใ‚„ใ›ใ‚‹ใ€‚ใคใพใ‚Šๅ…ƒใฎ้›†ๅˆใซ $0,2,5,6$ ใŒ ็„กใ‘ใ‚Œใฐใ€ไธ€ๆ“ไฝœใ”ใจใซใ“ใ‚Œใ‚‰ใ‚’ไธ€ใคใšใคๅข—ใ‚„ใ›ใ‚‹ใ€‚ $i$ ๅ›ž็›ฎใซ็ฉดใ‚’ๅŸ‹ใ‚ใšใซๅคš้‡้›†ๅˆใ‚’ๅข—ใ‚„ใ™ใ‹ใ€็ฉดใ‚’ๅŸ‹ใ‚ใฆ $i+1$ ๅ›ž็›ฎใซๅคš้‡้›†ๅˆใ‚’ๅข—ใ‚„ใ™ใ‹ใ€ไธกๆ–นใฎๅฏ่ƒฝๆ€งใซใคใ„ใฆ็ต„ใฟๅˆใ‚ใ›ใ‚’ๆ•ฐใˆใ‚‹ใ€‚

$i=1..K$ ็•ช็›ฎใฎ็ฉดใŒ $H_i$ ใฎใจใใ‚’่€ƒใˆใ‚‹ใ€‚ $H_1 = 0$ ใชใ‚‰ๅฟ…ใš0ใŒๅŸ‹ใพใ‚Šใ€็ต„ใฟๅˆใ‚ใ›ใฏ1้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใใ‚Œไปฅๅค–ใฎๅ ดๅˆใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • $i$ ๅ›ž็›ฎใŠใ‚ˆใณใใ‚Œไปฅ้™ใฎๆ“ไฝœใง $H_i$ ใ‚’ๅŸ‹ใ‚ใชใ„ใ€‚ใ“ใฎใจใๅคš้‡้›†ๅˆใฏ $[0..H_i)$ ใ‹ใ‚‰ $R = K - i - 1$ ๅ›žๅพฉๅ…ƒๆŠฝๅ‡บใ™ใ‚‹็ต„ใฟๅˆใ‚ใ›ใชใฎใงใ€ $R+H_i-1 \choose H_i$ ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏ $H_i$ ๅ€‹ใฎ่ฆ็ด ใ‚’ $R - 1$ ๅ€‹ใฎไป•ๅˆ‡ใ‚ŠใงๅŒบๅˆ‡ใ‚‹ๆ–นๆณ•ใงใ‚ใ‚‹ใ€‚
  • $i$ ๅ›ž็›ฎใฎๆ“ไฝœใง $H_i$ ใ‚’ๅŸ‹ใ‚ใ‚‹ใ€‚ใ“ใฎใจใ $i+1$ ๅ›ž็›ฎใฎๆ“ไฝœใฏ $[0..H_{i+1})$ ใ‹ใ‚‰ $R = K - (i+1) - 1$ ๅ›žๅพฉๅ…ƒๆŠฝๅ‡บใ™ใ‚‹็ต„ใฟๅˆใ‚ใ›ใงใ‚ใ‚‹ใ€‚

ใ“ใ‚Œใ‚’ $i=1..K$ ใซใคใ„ใฆ่ถณใ›ใฐใ„ใ„ใฎใ ใŒใ€็ต„ใฟๅˆใ‚ใ›ใฎๆ•ฐใ‚’็ด ใงๆฑ‚ใ‚ใ‚‹ใจTLEใ™ใ‚‹ใฎใงใ€ๆผธ้€ฒ็š„ใซๆฑ‚ใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใซใฏ้šŽไน—ใฎๅ‰่จˆ็ฎ—ใจใ‚ใ‚‹ใŒใ€ๆ…ฃใ‚Œใฆใ„ใชใ„ใจๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

  • ${n-1 \choose k} = {n \choose k} \times (n-k) / n$
  • ${n+1 \choose k} = {n \choose k} \times (n+1) / (n+1-k)$

ARC 157-A

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

ใƒญใ‚ธใƒƒใ‚ฏใ‚ขใƒŠใƒฉใ‚คใ‚ถ

Xใ‚’ไฝŽ้›ปๅœงใ€Yใ‚’้ซ˜้›ปๅœงใจ่€ƒใˆใ‚‹ใจใ€Xใ‹ใ‚‰Yใ€Yใ‹ใ‚‰Xใฏ้›ปๅœงใฎ้ท็งปใซ่ฆ‹ใˆใ‚‹ใ€‚ใ‚ˆใฃใฆXใ‹ใ‚‰Yใธใฎ้ท็งปๅ›žๆ•ฐใจใ€Yใ‹ใ‚‰Xใฎ้ท็งปๅ›žๆ•ฐใฎๅทฎใฏใ€้ซ˜ใ€…1ไปฅไธ‹ใงใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ€‚ใคใพใ‚Š $abs(b-c)&gt;1$ ใชใ‚‰ No ใงใ‚ใ‚‹ใ€‚

ๅ•้กŒๆ–‡ใ‚’ใ‚ˆใ่ชญใ‚€ใจใ€ๅ…ฅๅŠ›ใฏ0ไปฅไธŠใงใ‚ใ‚‹ใ€‚ใคใพใ‚Š้ท็งปใŒๅ…จใใชใ„ใ“ใจใŒใ‚ใ‚‹ใ€‚้ท็งปใŒ็„กใ„ใชใ‚‰ไฝŽ้›ปๅœงใจ้ซ˜้›ปๅœงใฎไธกๆ–นใ‚’ๅ–ใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ใ‚ˆใฃใฆ $B=0 \land C=0 \land (A&gt;0) \land (D&gt;0)$ ใชใ‚‰ No ใงใ‚ใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใฏ Yes ใงใ‚ใ‚‹ใ€‚้ท็งปใ—ใชใ„ใคใพใ‚Š้›ปๅœงใŒๅŒใ˜(XX,YY)ใ“ใจใฏใ€ๆ–‡ๅญ—ๅˆ—ใฎๅฅฝใใชๅ ดๆ‰€ใซๆŒŸใฟ่พผใ‚€ใ“ใจใŒใงใใ‚‹ใ€‚

ARC 157-B

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

ๅ„ชๅ…ˆๅบฆไป˜ใ‘ใซ่‹ฆใ—ใ‚“ใ ใ€‚

YX...XY ใจไธกๅดใ‚’ Y ใซๅ›ฒใพใ‚ŒใŸ X ใŒ้€ฃ็ถš $C$ ๅ€‹ไธฆใ‚“ใงใ„ใ‚‹ใจใ™ใ‚‹ใ€‚ใ“ใฎใจใ $i \leq C$ ๅ€‹ใฎ X ใ‚’ Y ใซ็ฝฎใๆ›ใˆใ‚‹ใจ Y ใŒ้€ฃ็ถšใ™ใ‚‹็ฎ‡ๆ‰€ใฏไฝ•ๅ€‹ๅข—ใˆใ‚‹ใ‹่€ƒใˆใ‚‹ใ€‚ $i \leq C$ ใชใ‚‰ $C$ ๅ€‹ใ€ $i = C$ ใชใ‚‰ $C+2$ ๅ€‹ๅข—ใˆใ‚‹ใ€‚ใคใพใ‚Š็Ÿญใ„ $C$ ใ‚’ๅŸ‹ใ‚ใใ‚‹ๆ–นใŒใ€้•ทใ„ $C$ ใ‚’ๅŸ‹ใ‚ใใ‚‹ใ‚ˆใ‚Šใ€ Y ใŒ้€ฃ็ถšใ™ใ‚‹็ฎ‡ๆ‰€ใŒๅข—ใˆใฆใŠๅพ—ใจใ„ใ†ใ“ใจใงใ‚ใ‚‹ใ€‚

ไธก็ซฏใคใพใ‚Š X...XY ใจ็‰‡ๅดใŒ้–‹ใ„ใฆใ„ใฆ X ใŒ้€ฃ็ถš $C$ ๅ€‹ไธฆใ‚“ใงใ„ใ‚‹ใจใ™ใ‚‹ใ€‚ Y ใŒ้€ฃ็ถšใ™ใ‚‹็ฎ‡ๆ‰€ใฏ $i \leq C$ ใชใ‚‰ $i$ ๅ€‹ๅข—ใˆใ‚‹ใฎใงใ€ๅŸ‹ใ‚ใใฃใŸใจใใฎใŠๅพ—ใฏใชใ„ใ€‚ใคใพใ‚Š $K$ ็ฎ‡ๆ‰€ใฎ X ใ‚’ Y ใซ็ฝฎใๆ›ใˆใ‚‹ใชใ‚‰ใ€ ไธกๅดใ‚’ Y ใซๅ›ฒใพใ‚ŒใŸ X ใ‚’้€ฃ็ถš้•ทใŒ็Ÿญใ„้ †ใซๅŸ‹ใ‚ใฆใ€ๆœ€ๅพŒใซไธก็ซฏใ‚’ๅŸ‹ใ‚ใ‚‹ใฎใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚

X ใฎๆ•ฐ $D$ ใ‚ˆใ‚Š $K$ ใŒๅคงใใ„ใจใใฏใ€ $S$ ใ‚’ใ™ในใฆ Y ใซใ—ใŸๅพŒใซ $K - D$ ๅ€‹ใฎ Y ใ‚’ X ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ใ“ใฎใจใใฎๆ“ไฝœใฏไธŠ่จ˜ใจใฏ้€†ใงใ€ๅ…ƒใ€…ใฎ $S$ ใซใคใ„ใฆๅ…ˆใซไธก็ซฏใ‹ใ‚‰ Y ใ‚’ X ใซ็ฝฎใๆ›ใˆใ€ใใฎๅพŒใซไธกๅดใ‚’ X ใซๅ›ฒใพใ‚ŒใŸ Y ใ‚’้€ฃ็ถš้•ทใŒ้•ทใ„้ †ใซๅŸ‹ใ‚ใ‚‹ใฎใŒๆœ€้ฉใงใ‚ใ‚‹ใ€‚

ไธŠ่จ˜ใฎๅ„ชๅ…ˆๅบฆใฏใ€ X , Y ใฎใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นใซๅ„ชๅ…ˆๅบฆใ‚’ใคใ‘ใฆใ€ $prio,len,left$ ใจใ—ใฆๆ˜‡้ †ใซไธฆใณๆ›ฟใˆใ‚Œใฐใ„ใ„ใ€‚ๅ„ชๅ…ˆๅบฆ $prio$ (ๆ•ฐๅญ—ใŒไฝŽใ„ใปใฉ้ซ˜ๅ„ชๅ…ˆๅบฆ)ใฏไปฅไธ‹ใฎ้€šใ‚Šใคใ‘ใ‚‹ใ€‚ใ“ใ“ใงๆ‰‹ใ“ใšใฃใฆใ—ใพใฃใŸใ€‚

  • ไธก็ซฏใฎๅ ดๅˆใ€ X ใชใ‚‰ $- \infty$ , Y ใชใ‚‰ $\infty$
  • ไธก็ซฏไปฅๅค–ใฎๅ ดๅˆใ€ X ใชใ‚‰ $-len$ , Y ใชใ‚‰ $len$

ARC 158-A

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

ไธๅค‰้‡

ARCใฏไธๅค‰้‡ใŒ้ ปๅ‡บใงใ€ใ„ใ„ไธๅค‰้‡ใ‚’่ฆ‹ใคใ‘ใ‚‹ใจใ‚ใฃใ•ใ‚Š่งฃใ‘ใฆใ€ใใ†ใงใชใ„ใจ่งฃใ‘ใชใ„ใ‹ๅฎŸ่ฃ…ใŒๅคงๅค‰ใซใชใ‚‹ใ‚ˆใ†ใงใ‚ใ‚‹ใ€‚ไปŠๅ›žใฏไธๅค‰้‡ใ‚’่‡ชๅŠ›ใงๆ€ใ„ใคใ‹ใชใ‹ใฃใŸใฎใงๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚“ใ ใ€‚ใ“ใ‚“ใชใซ็Ÿญใ„ ใ‚ณใƒผใƒ‰ ใซใชใ‚‹ใ€‚

ไธๅค‰้‡ใ‚’ไฝฟใ‚ใชใ„ๅ†—้•ทใช่งฃๆณ•ใชใ‚‰ๆ€ใ„ใคใ„ใŸใ€‚ๆ•ฐใฎๅทฎใ ใ‘ใŒ้‡่ฆใชใฎใงๅข—ๅˆ†ใ‚’ $[0,2,4]$ ใจใ—ใฆใ‚‚็ญ”ใˆใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚ใ“ใ‚Œใ‚’ $[-2,0,2]$ ใจใ—ใŸใฎใŒๅ…ฌๅผ่งฃ่ชฌใจใ€ใใ“ใ‹ใ‚‰ๅฐŽใ‘ใ‚‹ไธๅค‰้‡ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ใฏๅข—ๅˆ†ใ‚’ $[0,2,4]$ ใ ใจๆ€ใฃใฆ่งฃใใ€‚ใƒ†ใ‚นใƒˆใ‚ฑใƒผใ‚นใ‚’ไธฆใณๆ›ฟใˆใฆใ€ $x_1 \leq x_2 \leq x_3$ ใจใ—ใฆใ‚‚ไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใชใ„ใ€‚

  • ๆ•ฐใฎๅทฎใ€ $x_1-x_2$ ใŠใ‚ˆใณ $x_2-x_3$ ใŒใจใ‚‚ใซๅถๆ•ฐใงใชใ‘ใ‚Œใฐ $x$ ใ‚’็ญ‰ใ—ใใงใใชใ„ใ€‚ -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚
  • $x_1 = x_2 = x_3$ ใชใ‚‰็ญ”ใˆใฏ0
  • ไธŠ่จ˜ใงใชใใ€ $x_2 = x_3$ ใพใŸใฏใชใ‚‰ $x_1$ ใซ4ใ‚’่ถณใ—ใฆ $x_2,x_3$ ใจ็ญ‰ใ—ใใ™ใ‚‹ใ€‚2ๅ›ž่ถณใ™ใจ6ๅทฎใŒ็ธฎใพใ‚Š $x_1 = x_2$ ใซใงใใ‚‹ใ€‚ใชใฎใง $x_2 - x_1$ ใŒ6ใฎๅ€ๆ•ฐใงใชใ‘ใ‚Œใฐ $x$ ใ‚’็ญ‰ใ—ใใงใใชใ„ใ€‚6ใฎๅ€ๆ•ฐใชใ‚‰3ใงๅ‰ฒใฃใŸๅ›žๆ•ฐใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚
  • $x_1 = x_2$ ใฎใจใใ‚‚ๅŒๆง˜ใงใ‚ใ‚‹
  • $(x_2 - x_1) &lt; (x_3 - x_2)$ ใชใ‚‰ $x_1$ ใซ4ใ‚’ใ€ $x_2$ ใซ2ใ‚’็นฐใ‚Š่ฟ”ใ—่ถณใ™ใ“ใจใง $x_1 = x_2$ ใซใงใใ‚‹ใ€‚ใ“ใฎๅ›žๆ•ฐใฏ $(x_2 - x_1)/2$ ใงใ‚ใ‚‹ใ€‚ใ‚ใจใฏไธŠ่จ˜ใจๅŒๆง˜ใซใ€ $x_3$ ใจใใ‚ใˆใ‚‹ใ€‚
  • $(x_2 - x_1) \geq (x_3 - x_2)$ ใชใ‚‰ $x_2$ ใซ4ใ‚’ใ€ $x_3$ ใซ2ใ‚’็นฐใ‚Š่ฟ”ใ—่ถณใ™ใ“ใจใง $x_2 = x_3$ ใซใงใใ‚‹ใ€‚ใ“ใฎๅ›žๆ•ฐใฏ $(x_3 - x_2)/2$ ใงใ‚ใ‚‹ใ€‚ใ‚ใจใฏไธŠ่จ˜ใจๅŒๆง˜ใ€ $x_1$ ใจใใ‚ใˆใ‚‹ใ€‚

ไธๅค‰้‡ใ‚’ไฝฟใ‚ใชใ„ใจๅ ดๅˆๅˆ†ใ‘ใŒใจใฆใ‚‚ๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

ARC 158-B

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

ใปใผๆ€ใ„ใคใ„ใŸใŒ6 WAsใŒๅ–ใ‚Œใชใ‹ใฃใŸใ€‚

ๆญฃใฎๅ€คใ€่ฒ ใฎๅ€คใฎ้›†ๅˆใ‹ใ‚‰ใ€็ตถๅฏพๅ€คใŒๅคงใใ„้ †ใซ3ใคใ€็ตถๅฏพๅ€คใŒๅฐใ•ใ„้ †ใซ3ใคใ€่จˆ24้€šใ‚Šๅ–ใฃใฆ็ทๅฝ“ใŸใ‚Šใ™ใ‚Œใฐ่งฃใ‘ใ‚‹ใจๆ€ใฃใŸใ€‚ใฎใ ใŒใ€ใฉใ†ใ—ใฆใ‚‚6 WAsใŒๅ–ใ‚Œใšใซ่ซฆใ‚ใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใฟใ€็ฌฆๅทใ‚’็„ก่ฆ–ใ—ใฆ $1/x$ ใŒๅคงใใ„้ †ใซ3ใคใ€็ตถๅฏพๅ€คใŒๅฐใ•ใ„้ †ใซ3ใคๅ–ใ‚Œใฐๆญฃ่งฃใ—ใŸใ€‚

ARC 159-A

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

ใƒฏใƒผใ‚ทใƒฃใƒซใƒ•ใƒญใ‚คใƒ‰ๆณ•

ๅน… $N$ ใฎ $A$ ใ‚’็นฐใ‚Š่ฟ”ใ—ใŸใจใ“ใ‚ใงใ€้ ‚็‚น็•ชๅทใ‚’ $N$ ใงๅ‰ฒใฃใŸไฝ™ใ‚ŠใŒ็ญ‰ใ—ใ‘ใ‚Œใฐใ‚ใ‚‹้ ‚็‚นใ‹ใ‚‰ไป–ใฎ้ ‚็‚นใซๅˆฐ้”ๅฏ่ƒฝใ‹ใฉใ†ใ‹ใ€ๅˆฐ้”ๅฏ่ƒฝใชใ‚‰ๆœ€ๅฐ่ท้›ขใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚ใ‚ˆใฃใฆ $A$ ใซใคใ„ใฆ้ ‚็‚น้–“ใฎๆœ€ๅฐ่ท้›ขใ‚’ใƒฏใƒผใ‚ทใƒฃใƒซใƒ•ใƒญใ‚คใƒ‰ๆณ•ใงๆฑ‚ใ‚ใ‚‹ใ€‚

ใŸใ ใ—้ ‚็‚น่‡ช่บซใธใฏๅˆฐ้”ไธ่ƒฝ(่ท้›ขใฏ0ใงใฏใชใ $\infty$ )ใซใ™ใ‚‹ใ€‚ใใ†ใ—ใชใ„ใจ้ ‚็‚น็•ชๅทใŒใกใ‚‡ใ†ใฉ $N$ ้›ขใ‚Œใฆใ„ใ‚‹ใ€ $\lfloor s/N \rfloor \ne \lfloor t/N \rfloor$ ใ‹ใค $s \quad mod \quad N = t \quad mod \quad N$ ใฎใจใ็ญ”ใˆใŒใŠใ‹ใ—ใใชใ‚‹(่ท้›ขใŒ0ใงใฏใชใ„ใฎใซ0ใ‚’่ฟ”ใ™)ใ€‚

ใ“ใ“ใพใงใใ‚Œใฐใ€ $s=t$ ใชใ‚‰็ญ”ใˆใฏ0ใ€ใใ†ใงใชใ‘ใ‚Œใฐ $s \quad mod \quad N$ ใ‹ใ‚‰ $t \quad mod \quad N$ ใพใงใฎๆœ€ๅฐ่ท้›ขใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ARC 159-B

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

ใปใผ่งฃๆณ•ใฏ่ฆ‹ใˆใฆใ„ใ‚‹ใฎใซๆ•ฐๆ™‚้–“ๆŽ›ใ‹ใฃใฆใ—ใพใฃใŸใ€‚

$A = B$ ใชใ‚‰็ญ”ใˆใฏ1ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ $A &gt; B$ ใจใ™ใ‚‹ใ€‚

ๅ•้กŒๆ–‡ไธญใฎ $a,b$ ใ‚’ $a-gcd(a,b), b-gcd(a,b)$ ใซ็ฝฎใๆ›ใˆใ‚‹ใฎใฏใ€ $a/gcd(a,b)-1, b/gcd(a,b)-1$ ใซ็ฝฎใๆ›ใˆใ‚‹ใ“ใจใซใ—ใฆใ‚‚ๆ“ไฝœๅ›žๆ•ฐใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚ใ“ใ†ใ™ใ‚‹ใจ $a,b$ ใฏไบ’ใ„ใซ็ด ใจ่€ƒใˆใฆใ‚ˆใ„ใฎใง่€ƒๅฏŸใŒ็ฐกๅ˜ใซใชใ‚‹ใ€‚

ๆ“ไฝœใ‚’ใใฎใพใพๅฎŸ่ฃ…ใ™ใ‚‹ใจTLEใ™ใ‚‹ใฎใง้ซ˜้€ŸๅŒ–ใ‚’่€ƒใˆใ‚‹ใ€‚ $d = a - b$ ใจ็ฝฎใ„ใฆใ€ $d$ ใฎ1ไปฅๅค–ใฎ็ด„ๆ•ฐใฎ้›†ๅˆ $S$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $f \in S$ ใซใคใ„ใฆใ€ $a MOD f = b MOD f = r$ ใชใ‚‰ใ€ $a - r, b - r$ ใฏๅ…ฌ็ด„ๆ•ฐ $r$ ใ‚’ๆŒใคใจ่จ€ใˆใ‚‹ใ€‚่ฆใ™ใ‚‹ใซๆ“ไฝœใง $a,b$ ใ‹ใ‚‰1ใšใคๅผ•ใใฎใงใฏใชใใ€ใพใจใ‚ใฆ $r$ ๅผ•ใใ“ใจใŒใงใใ‚‹ใ€‚ๅผ•ใใ™ใŽใชใ„ใ‚ˆใ†ใซๆœ€ๅฐใฎ $r$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ใ“ใฎใ‚ˆใ†ใช $r$ ใŒๆฑ‚ใพใ‚‰ใชใ„ๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ $(a - b) &gt; b$ ใคใพใ‚Š $a$ ใŒ $b$ ใฎๅ€ไปฅไธŠใชใ‚‰ใ€ $b$ ใ‚’ $b - 1$ ๅผ•ใ„ใฆ $a = 1$ ใซใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐ $b$ ใ‹ใ‚‰1ๅผ•ใใ€‚ใ“ใ‚ŒใŒๅˆ†ใ‹ใ‚‰ใชใใฆๆ™‚้–“ใŒๆŽ›ใ‹ใฃใŸใ€‚

ใ“ใ‚Œใ‚’็นฐใ‚Š่ฟ”ใ—ใ€ $b$ ใ‹ใ‚‰ๅผ•ใ„ใŸๆ•ฐใ‚’ๆ“ไฝœๅ›žๆ•ฐใซใ™ใ‚‹ใจ็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใ‚‚ใ“ใฎ้€šใ‚Šใ ใŒใ€ $(a - b) &gt; b$ ใฎๅ ดๅˆใŒๆ›ธใ„ใฆใชใ„ใ‚ˆใ†ใซ่ฆ‹ใˆใ‚‹(ใ‚‚ใ—ใ‹ใ—ใŸใ‚‰ๆ˜Ž็คบ็š„ใซๆ›ธใ‹ใชใใฆใ‚‚้”ๆˆใงใใ‚‹ใฎใ‹ใ‚‚ใ—ใ‚Œใชใ„)ใ€‚

ARC 160-A

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

1ๆ™‚้–“ใจ4ๅˆ†

่งฃใฎๆ–น้‡ใฏ็ซ‹ใฃใŸใŒใ€Fenwick Treeใฎaddใจsumใ‚’้–“้•ใˆใฆๆ™‚้–“ใ‚’ๆบถใ‹ใ—ใŸใ€‚

$A$ ใซ้‡่ค‡ใŒ็„กใ„ใจใ„ใ†ใฎใฏ้‡่ฆใชๅˆถ็ด„ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใซๆฐ—ใฅใใฎใŒ้…ใ‚ŒใŸใ€‚ $A_1$ ใ‚’ $A_2..A_n$ ใจๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ“ใจใ‹ใฉใ†ใ‹่€ƒใˆใ‚‹ใ€‚ $i=1$ ใ€ๅ–ใ‚Šใ†ใ‚‹็ต„ใฟๅˆใ‚ใ› $M = N(N+1)/2$ ใงๅˆๆœŸๅŒ–ใ™ใ‚‹ใ€‚

  • $A_i &gt; A_j : i &lt; j$ ใช $j$ ใŒ $C_{low}$ ๅ€‹ใงใ‚ใ‚‹ใ“ใจใ‚’Fenwick Treeใงๆ•ฐใˆใ‚‹ใ€‚ $C_{low} &lt; K$ ใชใ‚‰ใ€ $A_j$ ใฎ $K$ ็•ช็›ฎใซๅฐใ•ใ„่ฆ็ด ใ‚’่ฆ‹ใคใ‘ใฆ $A$ ใฎ $[i,j]$ ้–“ใ‚’้€†้ †ใซใ™ใ‚‹
  • $A_i &lt; A_j : i &lt; j$ ใช $j$ ใŒ $C_{hi}$ ๅ€‹ใงใ‚ใ‚‹ใ“ใจใ‚’Fenwick Treeใงๆ•ฐใˆใ‚‹ใ€‚ $M - C_{hi} &lt; K$ ใชใ‚‰ใ€ $A_j$ ใฎ $K$ ็•ช็›ฎใซๅฐใ•ใ„่ฆ็ด ใ‚’่ฆ‹ใคใ‘ใฆ $A$ ใฎ $[i,j]$ ้–“ใ‚’้€†้ †ใซใ™ใ‚‹
  • ใใ‚Œไปฅๅค–ใชใ‚‰ $A_i$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใชใ„ใฎใงใ€ $i$ ใ‚’1่ถณใ™ใ€‚ไฝตใ›ใฆใ€ $K$ ใซ $C_{low}$ ใ‚’่ถณใ—(ๅฐ‘ใชใใจใ‚‚ใ“ใฎ้ †ไฝใชใฎใง)ใ€ $M$ ใ‹ใ‚‰ $C_{low} + C_{hi}$ ใ‚’ๅผ•ใ(้ †ไฝใฎไธŠ้™ใŒไธ‹ใŒใ‚‹ใฎใง)

ใ“ใฎๅๅพฉใŒๅœๆญขใ—ใŸใจใใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏ $O(N^2)$ ใจใ‚ใ‚‹ใŒใ€Fenwick Treeใ‚’ไฝฟใ†ใจ $O(Nlog(N))$ ใฎ 3msec ใงใ‚ใ‚‹ใ€‚

ARC 160-B

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

2ๆ—ฅๆŽ›ใ‹ใฃใŸใ€‚ๅคœ่งฃใ„ใฆTLEใ—ใŸใฎใง็ฟŒๆœ่งฃใ„ใŸใ€‚ใ“ใ‚Œใ ใ‘ๆ™‚้–“ใ‚’ๆŽ›ใ‘ใ‚‹ใจใ‚ณใƒณใƒ†ใ‚นใƒˆไธญใซใฏ้–“ใซๅˆใ‚ใชใ„ใ€‚

$x \leq y \leq z$ ใจใ—ใฆไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใชใ„ใ€‚ไธŠๆ‰‹ใๅ ดๅˆๅˆ†ใ‘ใ—ใŸใ‚ใจใ€่จˆ็ฎ—้‡ใ‚’ๆธ›ใ‚‰ใ—ใฆ้ †ๅˆ—ใ‚’ๆ•ฐใˆใ‚‹ใ€‚ $M = \lfloor \sqrt{N} \rfloor$ ใจใ™ใ‚‹ใ€‚

  • $x = y = z$ ใฏ $x = 1..M$ ใงๆˆใ‚Š็ซ‹ใคใ€‚้ †ๅˆ—ใฏใใ‚Œใžใ‚Œ1้€šใ‚Šใ€‚
  • $x = y &lt; z$ ใฏ $z = (x+1).. \lfloor N/x \rfloor$ ใงๆˆใ‚Š็ซ‹ใคใ€‚้ †ๅˆ—ใฏใใ‚Œใžใ‚Œ3้€šใ‚Šใ€‚
  • $x &lt; y = z$ ใฏ $y = (x+1).. M$ ใงๆˆใ‚Š็ซ‹ใคใ€‚้ †ๅˆ—ใฏใใ‚Œใžใ‚Œ3้€šใ‚Šใ€‚
  • $x &lt; y &lt; z$ ใ‚’ไธŠๆ‰‹ใๆ•ฐใˆใ‚‹ใ€‚้ †ๅˆ—ใฏใใ‚Œใžใ‚Œ6้€šใ‚Šใ€‚

$x &lt; y &lt; z$ ใ‚’ $x,y$ ใฎไบŒ้‡ใƒซใƒผใƒ—ใงๆ•ฐใˆใ‚‹ใจTLEใ™ใ‚‹ใฎใงใ€่จˆ็ฎ—้‡ใ‚’ๆธ›ใ‚‰ใ™ใ€‚็ต่ซ–ใ‹ใ‚‰่จ€ใ†ใจใ€ไปฅไธ‹ใฎ $cumsum$ ใซใคใ„ใฆใ€ $\sum_{i=1..M} cumsum(M) - cumsum(i)$ ใงใ‚ใ‚‹ใ€‚

  • $cumsum(0) = 0$
  • $cumsum(i+1) = cumsum(i) + N / i - i$

ใ“ใ“ใง็ดฏ็ฉๅ’Œใซ่ถณใ™ $N / i - i$ ใฏใ€ $i$ ใซๆŽ›ใ‘ใŸใ‚‰ $N$ ไปฅไธ‹ใซใชใ‚‹ $i$ ใ‚ˆใ‚Šๅคงใใชๆ•ฐใฎๅ€‹ๆ•ฐใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌ2ใจๅŒใ˜่งฃๆณ•ใ ใŒใ€็ดฏ็ฉๅ’Œใฏ่ฆใ‚‰ใชใ‹ใฃใŸใ€‚

ARC 161-170

ARC 161-A

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

่€ƒใˆใ‚‹ใ‚ˆใ‚Šๆ‰‹ใ‚’ๅ‹•ใ‹ใ™ใ€‚

ๅŒใ˜ๆ•ฐๅญ—ใŒไฝ•ๅ€‹ไธฆใ‚“ใ ใ‚‰ใ€ใจใ„ใ†่ฆๅ‰‡ๆ€งใ‚’่ฆ‹ใ„ใ ใใ†ใจใ—ใฆWAใ—ใŸใ€‚ $A$ ใ‚’ๆ˜‡้ †ใซใ‚ฝใƒผใƒˆใ—ใ€ๅ‰ๅŠ $\lceil n/2 \rceil$ ๅ€‹ใฎๅ…ˆ้ ญใ‹ใ‚‰ใฎ้š™้–“ใซใ€ ๅพŒๅŠ $n - \lceil n/2 \rceil$ ๅ€‹ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰ๆŒŸใฟ่พผใ‚“ใงMๅญ—ใซใชใ‚‹ใ‹ใฉใ†ใ‹็ขบใ‹ใ‚ใ‚‹ใ€‚

่งฃๆณ•2ใ‚’ๆญฃ็ญ”ใ™ใ‚‹ใ“ใจใŒใงใใš27ๅˆ†ๆŽ›ใ‹ใฃใฆใ—ใพใฃใŸใ€‚่งฃๆณ•2ใ‚’ๅฎŸ่ฃ…ใ™ใ‚‹ใจ ใ“ใ†ใชใ‚‹ ใŒใ€ $N=1$ ใ‚’็‰นๅˆฅๆ‰ฑใ„ใ—ใชใ„ใจWAใ™ใ‚‹ใ€‚

ARC 161-B

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

ๅค‰ๆ•ฐใฎไฝฟใ„ใพใ‚ใ—ใซๆณจๆ„

ๅ…ฅๅŠ›ใ—ใŸๅ€ค $N$ ใ‚’ๆœ€ๅพŒใพใงๅค‰ใˆใชใ„ใ€‚ใƒ“ใƒƒใƒˆๅˆ—ใ‚’ๅ–ใ‚Šๅ‡บใ™ใจใใซ $N$ ใฎๅ€คใ‚’ๅณใ‚ทใƒ•ใƒˆใ—ใฆๅค‰ใˆใ‚‹ใจใƒใ‚ฐใ‚‹ใ€‚

$f(X)=3$ ใชใฎใงๅ…จใƒ‘ใ‚ฟใƒผใƒณ็ถฒ็พ…ใ™ใ‚Œใฐใ„ใ„ใ€‚ $N$ ใŒไฝ•ใƒ“ใƒƒใƒˆ็ซ‹ใฃใฆใ„ใ‚‹ใ‹ใงใ€็ญ”ใˆใฎใฉใฎ3ใƒ“ใƒƒใƒˆใ‚’็ซ‹ใฆใ‚‹ใ‹ๆฑบใ‚ใ‚‹ใ€‚ๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใฏๅธธใซ็ซ‹ใฃใฆใ„ใ‚‹ใ“ใจใซใ™ใ‚‹ใ€‚

  • $N&lt;7$ ใชใ‚‰่งฃใชใ—(-1)
  • $f(N) \leq 3$ ใชใ‚‰ใ€ไธŠไฝใƒ“ใƒƒใƒˆใ‹ใ‚‰้ †ใซใ‹ใ‚‰3ใƒ“ใƒƒใƒˆ้›†ใ‚ใฆ็ซ‹ใฆใ‚‹
  • $f(N) = 1$ ใชใ‚‰ๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใ—ใ‹็ซ‹ใฃใฆใ„ใชใ„ใฎใงใ€ๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใฎไธ€ใคไธ‹ใฎๆกใ‹ใ‚‰3ใƒ“ใƒƒใƒˆ้€ฃ็ถšใง็ซ‹ใฆใ‚‹
  • $f(N) = 2$ ใชใ‚‰ใ€ๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใงใฏใชใ„็ซ‹ใฃใฆใ„ใ‚‹ใƒ“ใƒƒใƒˆใฎไฝ็ฝฎใงๅˆ†ใ‹ใ‚Œใ‚‹
    • $N \quad mod \quad 3 &gt; 0$ ใคใพใ‚Šไธ‹ไฝ2ใƒ“ใƒƒใƒˆใŒใ„ใšใ‚Œใ‚‚0ใงใชใ‘ใ‚Œใฐใ€็ซ‹ใฃใฆใ„ใ‚‹ใƒ“ใƒƒใƒˆใ‚ˆใ‚Šไธ‹ไฝใƒ“ใƒƒใƒˆใซ2ใƒ“ใƒƒใƒˆ็ซ‹ใฆใ‚‹ใ“ใจใฏใงใใชใ„ใฎใงใ€ $f(N) = 1$ ใจๅŒใ˜ใซใ™ใ‚‹ใ€‚
    • ใใ†ใงใชใ‘ใ‚Œใฐๆœ€ไธŠไฝใƒ“ใƒƒใƒˆไปฅๅค–ใง็ซ‹ใฃใฆใ„ใ‚‹ใƒ“ใƒƒใƒˆใฎใ€ไธ€ใคไธ‹ใฎๆกใ‹ใ‚‰2ใƒ“ใƒƒใƒˆ้€ฃ็ถšใง็ซ‹ใฆใ‚‹ใ€‚ๆœ€ไธŠไฝใƒ“ใƒƒใƒˆใ‚‚็ซ‹ใฆใ‚‹ใ€‚

ใ‚ใจใฏ็ซ‹ใฆใŸใƒ“ใƒƒใƒˆไฝ็ฝฎ3ใคใ‹ใ‚‰็ญ”ใˆใ‚’ๆฑ‚ใ‚ใ‚‹( ใƒ“ใƒƒใƒˆ $i$ ใ‚’็ซ‹ใฆใŸใชใ‚‰ $2^i$ ใ‚’่ถณใ™)ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏ3้€šใ‚Šใ‚ใ‚Šใ€ไธŠ่จ˜ใฏ่งฃๆณ•2ใงใ‚ใ‚‹ใ€‚่งฃๆณ•1ใ ใจๅฎŸ่ฃ…ใŒใ‚‚ใฃใจ็Ÿญใ ใ“ใฎใ‚ˆใ† ใซใชใ‚‹ใ€‚

ARC 161-D

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

Dๅ•้กŒใชใฎใซ25ๅˆ†ใง่งฃใ‘ใŸใ€‚

ๅฎŒๅ…จใ‚ฐใƒฉใƒ•ใฎๅค‰ๆ•ฐใฏ $N(N-1) / 2$ ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $N(N-1)/2 &lt; D$ ใคใพใ‚Š $N(N-1) &lt; 2D$ ใชใ‚‰่งฃใชใ—ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏๅ…ฅๅŠ›ไพ‹2ใŒ้‡่ฆใชใƒ’ใƒณใƒˆใซใชใฃใฆใ„ใ‚‹ใ€‚

ใใ‚Œไปฅๅค–ใฎๅ ดๅˆใฏ่งฃใŒใ‚ใ‚‹ใ€‚ใพใšๅฎŒๅ…จใ‚ฐใƒฉใƒ•ใคใพใ‚Š $N(N-1) = 2D$ ใง $G$ ใฎๅฏ†ๅบฆใŒ $N(N-1) /2N = (N-1)/2$ ใง ใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ใ“ใฎใจใ $G$ ใ‹ใ‚‰้ ‚็‚นใ‚’1ใค้™คใใจใ€้™คใ„ใŸ้ ‚็‚นใฎๅฏ†ๅบฆใฏ0ใ€ใใ‚Œไปฅๅค–ใฎ้ ‚็‚นใฏๅฎŒๅ…จใ‚ฐใƒฉใƒ•ใงๅฏ†ๅบฆใฏ $(N-2)/2$ ใซใชใ‚‹ใ€‚ใคใพใ‚Š้ ‚็‚นใ‚’้™คใใจๅฏ†ๅบฆใฎไฝŽใ„ๅฎŒๅ…จใ‚ฐใƒฉใƒ•ใŒใงใใ‚‹ใฎใงใ€ๅฎŒๅ…จใ‚ฐใƒฉใƒ•ใฏ่งฃใฎๆกไปถใ‚’ๆบ€ใŸใ™ใ€‚

ๅฎŒๅ…จใ‚ฐใƒฉใƒ•ไปฅๅค–ใฎๅ ดๅˆใ€ๆœ€ๅˆใซๆญฃ $N$ ่ง’ๅฝขใ‚’่€ƒใˆใ‚‹ใ€‚ $D = 1$ ใชใ‚‰ใ“ใ‚ŒใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰้ ‚็‚นใ‚’ไธ€ใค้™คใใจใ€้™คใ„ใŸ้ ‚็‚นใฎๅฏ†ๅบฆใฏ0ใ€ใใ‚Œไปฅๅค–ใฎ้ ‚็‚นใ‹ใ‚‰ใชใ‚‹ใ‚ฐใƒฉใƒ•ใฏใƒ‘ใ‚นใ‚ฐใƒฉใƒ•ใงใ€ๅฏ†ๅบฆใฏ $(N-2)/(N-1) &lt; 1 = D$ ใซใชใ‚Šใ€ไปฅๅพŒๆ“ไฝœใ™ใ‚‹ใ”ใจใซ้ ‚็‚นใจๅฏ†ๅบฆใฏๆธ›ใ‚‹ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

$D &gt; 1$ ใฎ็Šถๆณใ‚’่€ƒใˆใ‚‹ใ€‚ๆญฃ $N$ ่ง’ๅฝขใซใŠใ„ใฆใ€่ท้›ข $d = 1..D$ ใฎ้ ‚็‚นๅŒๅฃซใ‚’็ตใถใ€‚ใ“ใฎใ‚ˆใ†ใชใ‚ฐใƒฉใƒ• $G$ ใ‹ใ‚‰้ ‚็‚นใ‚’ไธ€ใค้™คใใจใ€้™คใ„ใŸ้ ‚็‚นใฎๅฏ†ๅบฆใฏ0ใ€ใใ‚Œไปฅๅค–ใฎ้ ‚็‚นใ‹ใ‚‰ใชใ‚‹ใ‚ฐใƒฉใƒ•ใฎๅฏ†ๅบฆใฏ $D(N-2)/(N-1) &lt; D$ ใซใชใ‚Šใ€ไปฅๅพŒๆ“ไฝœใ™ใ‚‹ใ”ใจใซ้ ‚็‚นใจๅฏ†ๅบฆใฏๆธ›ใ‚‹ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚

ไปฅไธŠใ‹ใ‚‰่งฃใŒๆฑ‚ใพใฃใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌใจ็ญ”ใˆใฏๅŒใ˜ใ ใŒใ€ๅ…ฌๅผ่งฃ่ชฌใฎ่จผๆ˜ŽใฏใƒใƒŸใƒซใƒˆใƒณ้–‰่ทฏใ‚’็”จใ„ใฆใ„ใ‚‹ใ€‚

ARC 162-A

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

็ทšใ‚’ๆใ

ๅพ€่ทฏใฎ้ †ไฝใจๅพ€ๅพฉใฎ้ †ไฝใ‚’ๆใใจใ€็ทšใŒไบคใ‚ใฃใŸใ‚Šไบคใ‚ใ‚‰ใชใ‹ใฃใŸใ‚Šใ™ใ‚‹ใ€‚ไบคใ‚ใ‚‰ใชใ„ใจใ„ใ†ใฎใฏ่ชฐใซใ‚‚ๆŠœใ‹ใ‚Œใชใ‹ใฃใŸใ“ใจใ‚’ๆ„ๅ‘ณใ™ใ‚‹ใฎใงใ€ๅŒบ้–“่ณžใซใชใ‚Šใ†ใ‚‹ใ€‚ใคใพใ‚Š่‡ชๅˆ†ใ‚ˆใ‚Š้…ใๅ‡บ็™บใ—ใฆใ€่‡ชๅˆ†ใ‚ˆใ‚Šๆ—ฉใ็€ใ„ใŸ้ธๆ‰‹ไปฅๅค–ใฎๆ•ฐใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ›ณใ‚’ๆใ„ใฆใ€่ชฐใซใ‚‚ๆŠœใ‹ใ‚Œใชใ‹ใฃใŸ(ๆŠœใ„ใŸใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ—ๆŠœใ‹ใชใ‹ใฃใŸใ‹ใ‚‚ใ—ใ‚Œใชใ„)ใจใใฏๅž‚็›ดใช็ธฆ็ทšใ€ๆŠœใ‹ใ‚ŒใŸใจใใฏๅž‚็›ด็ทšใ‚’ๅทฆไธŠใ‹ใ‚‰ๅณไธ‹ใซๆจชๅˆ‡ใ‚‹ๆ–œ็ทšใ‚’ๆใใจๅˆ†ใ‹ใ‚Šใ‚„ใ™ใ„ใ€‚้‰„้“ใƒ€ใ‚คใƒคใ‚ฐใƒฉใƒ ใฎๆ€ฅ่กŒใจๆ™ฎ้€šใฎ้–ขไฟ‚ใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌ้€šใ‚Šใซ $O(N)$ ๅฎŸ่ฃ…ใ™ใ‚‹ใจ ใ“ใกใ‚‰

ARC 162-B

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

ไธๅค‰้‡

่งฃ่ชฌใ‚’่ฆ‹ใชใ„ใจ่งฃใฎๆ–น้‡ใŒ็ซ‹ใŸใชใ‹ใฃใŸใ€‚1ใ‹ใ‚‰้ †็•ชใซๆ•ฐใ‚’ๅทฆใ‹ใ‚‰ๅฎšไฝ็ฝฎใ‚’ๆฑบใ‚ใฆใ„ใใ€ๆœซๅฐพใซใ‚ใ‚‹ใจใใฏไบŒใคๅทฆใซๅผ•ใฃๅผตใ‚Šๅ‡บใ™ใ€ใ‚’็นฐใ‚Š่ฟ”ใ›ใฐ่งฃใ‘ใ‚‹ใ€‚ไธๅค‰้‡ใŒ้‡่ฆใงใ€่งฃใŒใ‚ใ‚‹ใชใ‚‰ $A_{N-1},A_{N}$ ใ ใ‘ใŒ่ปขๅ€’ใ—ใฆใ„ใ‚‹ใจใ„ใ†็Šถๆณใฏใ‚ใ‚Šใˆใชใ„ใ“ใจใ‚’่ฆ‹ใคใ‘ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใ€‚

ๅฎŸ่ฃ…ๆ–นๆณ•ใฏ std::rotate ใŒไธ€็•ช็ฐกๅ˜ใงใ‚ใ‚‹ใ€‚ๅฎšไฝ็ฝฎ $i$ ใซ็ฝฎใในใๆ•ฐใŒไปŠใฉใ“ใซใ‚ใ‚‹ใ‹ใฏใ€่กจใง็ฎก็†ใ—ใชใใฆใ‚‚ std::find ใง้ƒฝๅบฆ่ฆ‹ใคใ‘ใฆใ‚ˆใ„( std::rotate ใŒๅพ‹้€Ÿใชใฎใง)ใ€‚

ใ“ใ“ใพใง่€ƒใˆใชใใฆใ‚‚ไธŠ่จ˜ใฎ้€šใ‚ŠๅฎŸ่ฃ…ใ—ใฆใ€ $A_{N-1},A_{N}$ ใ ใ‘ใŒ่ปขๅ€’ใ—ใŸใ‚‰ No ใ‚’ๅ‡บๅŠ›ใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

ARC 162-C

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

ๆ–น้‡ใฏใ™ใ็ซ‹ใฃใŸใŒๅฎŸ่ฃ…ใงๆ‰‹้–“ๅ–ใฃใŸใ€‚

้ ‚็‚นใซๆ•ฐ $K$ ใ‚’็ฝฎใ„ใŸใ‚‰ใ€ใใฎ้ ‚็‚นใ‚’ๅซใ‚€้ ‚็‚น้›†ๅˆใฎMEXใฏๆฑบใ—ใฆ $K$ ใซใชใ‚‰ใชใ„ใ€‚Bobใฏๅ€คใŒ -1 ใฎ้ ‚็‚นใซๅธธใซ $K$ ใ‚’็ฝฎใ„ใฆๅฆจๅฎณใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

็‰นใซ่‘‰ใซใคใ„ใฆใฏไปฅไธ‹ใŒ่จ€ใˆใ‚‹ใ€‚

  • $K=0$ ใชใ‚‰ใ€ $V=1$ ใชใ‚‰ใใฎ้ ‚็‚นใซใคใ„ใฆAliceใฎๅ‹ใกใ€ $V=-1$ ใชใ‚‰ $V=1$ ใซใ—ใฆAliceใฎๅ‹ใกใงใ‚ใ‚‹ใ€‚
  • $K=1$ ใชใ‚‰ใ€ $V=0$ ใชใ‚‰ใใฎ้ ‚็‚นใซใคใ„ใฆAliceใฎๅ‹ใกใ€ $V=-1$ ใชใ‚‰ $V=0$ ใซใ—ใฆAliceใฎๅ‹ใกใงใ‚ใ‚‹ใ€‚
  • $K&gt;1$ ใชใ‚‰Aliceใฏใใฎ้ ‚็‚นใงๅ‹ใคใ“ใจใฏใงใใšใ€ไป–ใฎ้ ‚็‚นใงๅ‹ๆ•—ใŒๆฑบใพใ‚‹ใ€‚

ใ“ใ‚Œใ‚’ไธ€่ˆฌๅŒ–ใ™ใ‚‹ใ€‚AliceใŒใ“ใ‚Œใ‚’ๅ›ž้ฟใ™ใ‚‹ใซใฏใ€ไปฅไธ‹ใฎไบŒ้€šใ‚Šใ—ใ‹ใชใ„ใ€‚้ƒจๅˆ†ๆœจ $T$ ใŒใ‚ใ‚Šใ€ใใฎ้ƒจๅˆ†ๆœจใซใฏ $K$ ใ‚’ๅซใพใชใ„ใ‚‚ใฎใจใ™ใ‚‹ใ€‚

  • ้ƒจๅˆ†ๆœจใŒ $M$ ้ ‚็‚นใงใ€้ ‚็‚นใฎๅ€คใŒใ™ในใฆ็ขบๅฎšใ—ใฆใŠใ‚Šใ€ใใฎMEXใŒ $K$ ใงใ‚ใ‚‹ใ€‚ใคใพใ‚Šๅ€ค $0..(K-1)$ ใŒใ™ในใฆ1ๅ›žไปฅไธŠๅ‡บ็พใ™ใ‚‹ใ€‚
  • ้ƒจๅˆ†ๆœจใŒ $M$ ้ ‚็‚นใงใ€้ ‚็‚นใฎๅ€คใŒใ™ในใฆ1ใ‹ๆ‰€ใ‚’้™คใ„ใฆ็ขบๅฎšใ—ใฆใ„ใ‚‹ใ€‚ใคใพใ‚Šๅ€ค $0..(K-1)$ ใฎใ†ใกใ€ไธ€ใคใ‚’้™คใ„ใฆ1ๅ›žไปฅไธŠๅ‡บ็พใ™ใ‚‹ใ€‚Aliceใฏๅ€คใŒๆฑบใพใฃใฆใชใ„้ ‚็‚นใซใ€ $T$ ใซๅ‡บ็พใ—ใฆใ„ใชใ„ $K$ ๆœชๆบ€ใฎๅ€คใ‚’ๅŸ‹ใ‚ใ‚Œใฐใ‚ˆใ„ใ€‚

AliceใŒๅ‹ใฆใ‚‹้ ‚็‚นใŒไธ€ใคใงใ‚‚ใ‚ใ‚ŒใฐAliceใฎๅ‹ใกใ€ใใ†ใงใชใ‘ใ‚ŒใฐBobใฎๅ‹ใกใงใ‚ใ‚‹ใ€‚

ๅฎŸ่ฃ…ใจใ—ใฆใฏใ€ๆœ€ๅˆใซDFSใงใ€ๅ„้ ‚็‚นใฎ้ƒจๅˆ†ๆœจใฎๅคงใใ•(ๅญใฎๆ•ฐ+1)ใจใ€้ƒจๅˆ†ๆœจใซๅ‡บ็พใ™ใ‚‹ๅ€คใฎ้›†ๅˆใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใใฎๅพŒใงๅ„้ ‚็‚นใซใคใ„ใฆMEXใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ARC 163-A

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

ไบŒๅˆ†ๅ‰ฒใ ใ‘่€ƒใˆใ‚‹

ๅ˜ใซๅˆ†ๅ‰ฒใ™ใ‚‹ๅ ดๆ‰€ใ‚’็ทๅฝ“ใŸใ‚Šใ™ใ‚Œใฐใ‚ˆใ‹ใฃใŸใ€‚้›ฃใ—ใ่€ƒใˆใ™ใŽใฆใƒ‡ใƒใƒƒใ‚ฐใซ่‹ฆใ—ใฟใ€30ๅˆ†ไปฅไธŠๆŽ›ใ‘ใฆใ—ใพใฃใŸใ€‚็‹ญ็พฉๅ˜่ชฟๅข—ๅŠ ใฏ std::string::operator< ใงใ‚ใ‚‹ใ€‚

ARC 163-B

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

็ฉดใ‚’ใƒœใƒผใƒซใซๅฏ„ใ›ใ‚‹ใ€‚

$A_1, A_2$ ใ‚’1ๅข—ๆธ›ใ™ใ‚‹ใ“ใจใจ $A_{3..N}$ ใ‚’1ๅข—ๆธ›ใ™ใ‚‹ใ“ใจใฏ็›ธๅฏพ็š„ใซใฏๅŒใ˜ใงใ‚ใ‚Šใ€ $A_1, A_2$ ใ‚’ๅข—ๆธ›ใ™ใ‚‹ๆ–นใŒๅข—ๆธ›ๅ›žๆ•ฐใฏๅŒใ˜ใ‹ๅฐ‘ใชใ„ใฎใ ใ‹ใ‚‰ใ€ๅธธใซ $A_1, A_2$ ใ‚’ๅข—ๆธ›ใ•ใ›ใ‚Œใฐใ„ใ„ใ€‚

$A_1, A_2$ ใ‚’ๅข—ๆธ›ใ•ใ›ใŸใจใใฎๅ€คใฎๅ€™่ฃœใฏ $A_{3..N}$ ใฎใ„ใšใ‚Œใ‹ใŒๆœ€้ฉใงใ‚ใ‚Šใ€ใใ‚Œไปฅๅค–ใฎๅ€คใซใ™ใ‚‹ๆ„ๅ‘ณใฏ็„กใ„ใ€‚ใ‚ˆใฃใฆ $[A_1,A_2]$ ใ‚’ $[A_{3..N-M+1},A_{3+M-1..N}]$ ใซใ—ใŸใจใใฎๅข—ๆธ›ๅ›žๆ•ฐใ‚’็ทๅฝ“ใŸใ‚Šใง่จˆ็ฎ—ใ—ใฆๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ€ $O(N)$ ใง็ญ”ใˆใŒๆฑ‚ใพใ‚‹ใ€‚

  • $A_1$ ใ‚’ $A_i$ ใซใ—ใŸใจใใฎๅข—ๆธ›ๅ›žๆ•ฐใฏ $min(0,A_1-A_i)$ ใงใ‚ใ‚‹ใ€‚ $A_i \leq A_1$ ใชใ‚‰ $A_i$ ใ‚’ๆธ›ใ‚‰ใ—ใฆ $A_1 \leq A_i \leq A_2$ ใฎ็ฏ„ๅ›ฒใ‚’ๆ‹กๅคงใ™ใ‚‹ใ€‚ $A_i &gt; A_1$ ใชใ‚‰ๆ—ขใซ $A_1 \leq A_i \leq A_2$ ใฎ็ฏ„ๅ›ฒใซๅฑ…ใ‚‹ใฎใง $A_1$ ใ‚’ๅข—ๆธ›ใ™ใ‚‹ๅฟ…่ฆใฏใชใ„ใ€‚
  • $A_2$ ใ‚’ $A_{i+M-1}$ ใซใ—ใŸใจใใฎๅข—ๆธ›ๅ›žๆ•ฐใฏ $min(0,A_{i+M-1}-A_2)$ ใงใ‚ใ‚‹ใ€‚็†็”ฑใฏๅŒๆง˜ใ€‚
  • ใ‚ˆใฃใฆ $i=3..N$ ใ‚’ๅ›บๅฎšใ—ใŸใจใใ€็ทๅข—ๆธ›ๅ›žๆ•ฐใฏ $min(0,A_1-A_i)+min(0,A_{i+M-1}-A_2)$

$A_1 &gt; A_2$ ใงใ‚‚ไธŠๆ‰‹ใใ„ใใ€‚

ARC 163-C

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

ๅˆ†ใ‹ใ‚‰ใชใ„ใฎใงๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚“ใ ใ€‚ $1/i(i+1) = (1/i) - (1/(i+1))$ ใ‚’ไฝฟใ†ใจใ€ $A_i \leq 10^9$ ใซๆŠ‘ใˆใ‚‰ใ‚Œใ‚‹ใ€‚ $N = i(i+1)$ ใจ่กจ็พใงใใ‚‹ใจใใฎๅ›ž้ฟ็ญ–ใŒ่ฆใ‚‹ใ€‚ใ“ใ‚Œใฏๆ€ใ„ใคใ‹ใชใ„ใ€‚ $A$ ใ‚’ $N^2$ ใซใ™ใ‚‹็™บๆƒณใŒใชใ‹ใฃใŸใ€‚

$1/2^{1..(N-1)}, 1/3 \times 2^{N-1}, 2/3 \times 2^{N-1}$ ใฎๅ’Œใ‚’1ใซใ™ใ‚‹ใจใ€ $N &gt; 30$ ใฎๆ™‚ใซ $A_i &gt; 10^9$ ใจใชใ‚Š็ญ”ใˆใŒๅ‡บใชใ„ใ€‚

ARC 164-A

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

3้€ฒๆ•ฐ

$N=K$ ใชใ‚‰ๆ˜Žใ‚‰ใ‹ใซ Yes ใ€ $N &lt; K$ ใชใ‚‰ๆ˜Žใ‚‰ใ‹ใซ No ใงใ‚ใ‚‹ใ€‚

ๅ†—้•ทใงใชใ„3้€ฒๆ•ฐใ€ใคใพใ‚Šๅ„ๆกใŒ0,1,2ใฎใ„ใšใ‚Œใ‹ใงใ‚ใ‚‹3้€ฒๆ•ฐใง $N$ ใ‚’่กจ่จ˜ใ—ใฆใ€ใ™ในใฆใฎๆกใ‚’่ถณใ—ใŸๅ’Œ $S$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $S &lt; K$ ใชใ‚‰ใ“ใฎ3้€ฒๆ•ฐใŒ $N$ ๆœชๆบ€ใซใชใฃใฆใ—ใพใ†ใฎใง็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚

3้€ฒๆ•ฐใ‚’ๅ†—้•ทใซใ™ใ‚‹ใ€ใคใพใ‚Šๅ„ๆกใŒ3ไปฅไธŠใซใชใ‚‹ใ“ใจใ‚’่ชใ‚ใ‚‹ใ€‚ใ“ใฎใจใๅ†—้•ทใซใ™ใ‚‹ใจใ€ $3^p \rightarrow 3 \times 3^{p-1}$ ใชใฎใงๆกใฏไธ€ใคๆธ›ใฃใฆไธ‰ใคๅข—ใˆๅทฎใ—ๅผ•ใไบŒใคๅข—ใˆใ‚‹ใ€‚ใคใพใ‚Š $S - K$ ใŒๅถๆ•ฐใชใ‚‰ Yes ใ€ๅฅ‡ๆ•ฐใชใ‚‰ No ใงใ‚ใ‚‹ใ€‚

ARC 164-B

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

ใƒซใƒผใƒ—ๆคœๅ‡บ

ใƒซใƒผใƒ—ใ‚’ไธ€ๅ‘จใ—ใฆใ€ไปŠใ„ใ‚‹้ ‚็‚นใจ็•ฐใชใ‚‹่‰ฒใซ็งปๅ‹•ใ™ใ‚‹ใฎใ‚’็นฐใ‚Š่ฟ”ใ™ใ“ใจใŒใงใใ‚Œใฐใ‚ˆใ„ใ€‚ใ“ใ‚Œใฏใ‚ใ‚‹ๅ‡บ็™บ็‚นใ‹ใ‚‰ใ€้ ‚็‚นใจ็•ฐใชใ‚‹่‰ฒใซ็งปๅ‹•ใ™ใ‚‹ใฎใ‚’็นฐใ‚Š่ฟ”ใ—ใ€ๅ‡บ็™บ็‚นใฎ้ ‚็‚นใจไธ€ๅ‘จ็›ดๅ‰(ๅ‡บ็™บ็‚นใฎ้šฃ)ใฎ้ ‚็‚นใŒๅŒใ˜่‰ฒใชใ‚‰ใ‚ˆใ„(ๅ‡บ็™บ็‚นใฎ้ ‚็‚นใฎ่‰ฒใฏๅ่ปขใ—ใฆใ„ใ‚‹ใฎใง)ใ€‚

ๅ•้กŒใฏใ€ไธŠ่จ˜ใฎๆกไปถใ‚’ๆบ€ใŸใ™ใƒซใƒผใƒ—ๆคœๅ‡บใ‚’ๅŠน็އใ‚ˆใๅฎŸ่ฃ…ใ—ใชใ„ใจTLEใ™ใ‚‹ใ“ใจใงใ‚ใ‚‹ใ€‚ไปฅไธ‹ใฎใ‚ˆใ†ใซDFSใ™ใ‚‹ใจTLEใ—ใชใ„ใ€‚

  • ๅ‡บ็™บ็‚นใฏ้ ‚็‚น $1..N$ ใ‚’ใ™ในใฆ่ฉฆใ™ใ€‚่พบใฎๆ•ฐใŒๅฐ‘ใชใ„ใฎใงๅ•้กŒใชใ„ใ€‚
  • ๆœ€ๅˆใฎ็งปๅ‹•ใงใฏใ€ไปŠใ„ใ‚‹้ ‚็‚นใจๅŒใ˜่‰ฒใซ็งปๅ‹•ใ™ใ‚‹ใ€‚ใใ†ใงใชใ„ใชใ‚‰ๆฌกใฎๅ€™่ฃœใจใชใ‚‹้ ‚็‚นใ‚’ๆŽขใ™ใ€‚
  • ไบŒ็•ช็›ฎไปฅ้™ใฎ็งปๅ‹•ใฏใ€ไปŠใ„ใ‚‹้ ‚็‚นใจ็•ฐใชใ‚‹่‰ฒใซ็งปๅ‹•ใ™ใ‚‹ใ€‚ใใ†ใงใชใ„ใชใ‚‰ๆฌกใฎๅ€™่ฃœใจใชใ‚‹้ ‚็‚นใ‚’ๆŽขใ™ใ€‚
  • ็›ดๅ‰ใฎ้ ‚็‚นใซใฏๆˆปใ‚‰ใชใ„(ๅŒใ˜่‰ฒใชใฎใงๆˆปใ‚‹ใ“ใจใŒใงใใชใ„)ใ€‚่จชใ‚ŒใŸใ“ใจใฎ็„กใ„้ ‚็‚นใ‚’ๅ†ๅธฐ็š„ใซใŸใฉใ‚‹ใ€‚
  • ใƒซใƒผใƒ—ใ‚’ๆคœๅ‡บใ™ใ‚‹ใ€ใคใพใ‚Šไธ€ๅบฆ่จชใ‚ŒใŸ็‚นใ‚’ใ‚‚ใ†ไธ€ๅบฆ่จชใ‚ŒใŸๅ ดๅˆใ€ใใ‚ŒใŒๅ‡บ็™บ็‚นใชใ‚‰ไธŠ่จ˜ใฎๆกไปถใ‚’ๆบ€ใŸใ™(DFSใฏtrueใ‚’่ฟ”ใ™)ใ€‚ใใ†ใงใชใ‘ใ‚ŒใฐDFSใฏfalseใ‚’่ฟ”ใ™ใ€‚
  • DFSใŒtrueใ‚’่ฟ”ใ—ใŸใ‚‰ใใ‚Œไปฅ้™ใฎๆŽข็ดขใ‚’ๆ‰“ใกๅˆ‡ใฃใฆ Yes ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚trueใ‚’่ฟ”ใ™ใ‚ฑใƒผใ‚นใŒใชใ‘ใ‚Œใฐ No ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌ้€šใ‚Šใ€union-findๆœจใ‚’ไฝฟใ†ใจ็ฐกๅ˜ใซ ๅฎŸ่ฃ… ใงใใ‚‹ใ€‚

ARC 164-C

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

DPใงใฏใชใ‹ใฃใŸใ€‚

DPใ ใจๆ€ใฃใŸใŒใใ†ใงใฏใชใ‹ใฃใŸใ€‚Aliceใซใจใฃใฆใฎๆœ€้ฉๅๅฟœใฏใ€่ฃ่ฟ”ใ™ใจBobใŒๆœ€ๅคงๆใ™ใ‚‹ใ‚ซใƒผใƒ‰ใ‚’่ฃ่ฟ”ใ™ใ“ใจใงใ‚ใ‚Šใ€Bobใซใจใฃใฆใฎๆœ€้ฉๅๅฟœใฏ่ฃ่ฟ”ใ•ใ‚Œใ‚‹ใจๆœ€ๅคงๆใ™ใ‚‹ใ‚ซใƒผใƒ‰ใ‚’็œŸใฃๅ…ˆใซๅ–ใ‚‹ใ“ใจใงใ‚ใ‚‹(ไปŠๅ–ใ‚‰ใชใใฆใ‚‚ๅพŒใงๅ†ๅบฆ่ฃ่ฟ”ใ—ใซใชใฃใฆๅ–ใ‚Œใ‚‹ใ‚ˆใ†ใซใชใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใŒใ€ไปŠๅ–ใฃใฆใ‚‚ๆใฏใ—ใชใ„)ใ€‚

ใคใพใ‚Š็พๆ™‚็‚นใง ่กจใฎๆ•ฐๅญ—-่ฃใฎๆ•ฐๅญ— ใŒๆœ€ๅคงใฎใ‚ซใƒผใƒ‰ใ‚’Aliceใฏใฒใฃใใ‚Š่ฟ”ใ—ใ€Bobใฏๅ–ใ‚‹ใฎใŒๆœ€้ฉๅๅฟœใงใ‚ใ‚‹ใ€‚

{่กจใฎๆ•ฐๅญ—-่ฃใฎๆ•ฐๅญ—, ่กจใฎๆ•ฐๅญ—, ่ฃใฎๆ•ฐๅญ—} ใ‚’ๅ„ชๅ…ˆๅบฆใ‚ญใƒฅใƒผใซ่ผ‰ใ›ใ‚‹ใ“ใจใง็ฎก็†ใงใใ‚‹ใ€‚

  • Aliceใฏๅ„ชๅ…ˆๅบฆใ‚ญใƒฅใƒผใฎๅ…ˆ้ ญใ€ใคใพใ‚Š่กจใฎๆ•ฐๅญ—-่ฃใฎๆ•ฐๅญ—ใŒๆœ€ๅคงใฎใ‚ซใƒผใƒ‰ใ‚’ๅ–ใฃใฆใ€่ฃ่ฟ”ใ—ใฆๅ„ชๅ…ˆๅบฆใ‚ญใƒฅใƒผใซ่ผ‰ใ›ใ‚‹ใ€‚ {่ฃใฎๆ•ฐๅญ—-่กจใฎๆ•ฐๅญ—, ่ฃใฎๆ•ฐๅญ—, ่กจใฎๆ•ฐๅญ—} ใ‚’่ผ‰ใ›ใ‚Œใฐใ‚ˆใ„ใ€‚
  • Bobใฏๅ„ชๅ…ˆๅบฆใ‚ญใƒฅใƒผใฎๅ…ˆ้ ญใฎใ‚ซใƒผใƒ‰ใ‚’ๅ–ใ‚Š้™คใใ€่กจใฎๆ•ฐๅญ—ใ‚’ๅพ—็‚นใจใ—ใฆๅพ—ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใฏ $O(N)$ ่งฃๆณ•ใŒใ‚ใ‚Šใ€ๅฎŸ่ฃ…ใฏใจใฆใ‚‚็ฐกๆฝ”ใงใ‚ใ‚‹ใ€‚ใ“ใฎ็จฎใฎๅฐŽๅ‡บใ‚’ใ™ใ‚‹่ƒฝๅŠ›ใŒ็งใซใฏ่ถณใ‚Šใชใ„ใ€‚

ARC 165-A

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

13ๅˆ†ๆŽ›ใ‹ใ‚‹ใ€‚

็ฐ่‰ฒใจใฏๆ€ใˆใชใ„้›ฃๆ˜“ๅบฆใงใ‚ใ‚‹ใ€‚ $A_n$ ใฎๆ•ฐใŒไปปๆ„ใงใ‚ใ‚‹ใ“ใจใซๆณจๆ„ใ™ใ‚‹ใ€‚ใ“ใฎใจใ $A_i=N$ ใชใ‚‹ๆ•ฐใŒใ‚ใฃใŸใ‚‰ No ใ€ใใ†ใงใชใ‘ใ‚Œใฐ Yes ใจไบˆๆƒณใงใใ‚‹ใ€‚

$A_i=N$ ใจใชใ‚‹ๆ•ฐใชใ—ใซ $A$ ใฎๆœ€ๅฐๅ…ฌๅ€ๆ•ฐใ‚’ $N$ ใซใฏใงใใชใ„็Šถๆณใ‚’่€ƒใˆใ‚‹ใ€‚ $N$ ใŒ็ด ๆ•ฐใชใ‚‰็ด„ๆ•ฐใฏ ${1,N}$ ใ€ $N$ ใฎ็ด ๅ› ๆ•ฐใŒไธ€ใคใ ใ‘ใชใ‚‰็ด„ๆ•ฐใฏ ${p^{0..k}}$ ใ€ๅ‰่€…ใฏๅพŒ่€…ใซๅซใพใ‚Œใ‚‹ใฎใง็ด ๅ› ๆ•ฐใŒไธ€ใคใ ใ‘ใชใ‚‰็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚

ใใ†ใงใชใ‘ใ‚Œใฐ $A$ ใฎๆœ€ๅฐๅ…ฌๅ€ๆ•ฐใŒ $N$ ใซใชใ‚‹ใ‚ˆใ†ใชใ„ใ„ๆ„Ÿใ˜ใฎ $A$ ใ‚’ไฝœใ‚Œใใ†ใงใ‚ใ‚‹ใ€‚ไพ‹ใˆใฐ็ด ๅ› ๆ•ฐ $p_1,p_2,...$ ใŒ $c1,c2,...$ ๅ€‹ใ‚ใ‚‹ใชใ‚‰ใ€ $A_1=p^{c1},A_2=p^{c1},...$ ใจใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใฎๅ’ŒใฏNใ‚ˆใ‚Šๅฐใ•ใใชใ‚‹( $A_1 \geq 2,A_2 \geq 3$ )ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚ $A$ ใฎๅ’ŒใŒ $N$ ใซ่ถณใ‚Šใชใ„ๅˆ†ใ‚’ใ™ในใฆ $A=1$ใซใ™ใ‚Œใฐใ€ๆœ€ๅคงๅ…ฌ็ด„ๆ•ฐใŒ $N$ ใงใ‚ใ‚‹ใพใพ $A$ ใฎๅ’Œใ‚’ $N$ ใซใงใใ‚‹ใ€‚ใ“ใฎใจใ็ญ”ใˆใฏ Yes ใงใ‚ใ‚‹ใ€‚

ARC 165-B

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

3ๆ—ฅ้–“ใ‹ใ‹ใฃใŸใ€‚ใชใ‚“ใจใชใๆ–น้‡ใฏ็ซ‹ใฃใŸใŒใ€ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใ‚’่ฉฐใ‚ใ‚‹ใฎใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใŸใ€‚

$K = 1$ ใชใ‚‰ๅ…ฅๅŠ›ใŒใใฎใพใพๅ‡บๅŠ›ใซใชใ‚‹ใ€‚ไปฅไธ‹ $K &gt; 1$ ใจใ™ใ‚‹ใ€‚

$P$ ใฎ่ฆ็ด ใŒ $K$ ๅ€‹้€ฃ็ถšใงๆ•ฐใŒๆ˜‡้ †ใชใ‚‰( $P$ ใฎๅ„่ฆ็ด ใฏไธ€ๆ„ใชใฎใง)ใ€ใใฎ้ƒจๅˆ†ใ‚’ใ‚ฝใƒผใƒˆใ™ใ‚‹ใ“ใจใงใ€ๅ…ฅๅŠ›ใŒใใฎใพใพๅ‡บๅŠ›ใซใชใ‚‹ใ€‚ใ‚ˆใ่€ƒใˆใŸใ‚‰ $K = 1$ ใ‚‚ใ“ใ‚Œใซ่ฉฒๅฝ“ใ™ใ‚‹ใ€‚ไปฅไธ‹่ฉฒๅฝ“ใ—ใชใ„ๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚

ใ‚ฝใƒผใƒˆใ‚’ใกใ‚‡ใ†ใฉ1ๅ›žใ™ใ‚‹ใฎใงใ€ใ‚ฝใƒผใƒˆใ™ใ‚‹ใจ $P$ ใฎ่พžๆ›ธๅผ้ †ๅบใŒไธ‹ใŒใฃใฆใ—ใพใ†ๅ ดๅˆใงใ‚‚ใ‚ฝใƒผใƒˆใ›ใ–ใ‚‹ใ‚’ๅพ—ใชใ„ใ€‚ๅฐใ•ใชๆ•ฐใ‚’ใ‚ฝใƒผใƒˆใ—ใฆๆ‰‹ๅ‰ใซๆŒใฃใฆใใ‚‹ใจๆใ™ใ‚‹ใฎใงใ€ไปฎใฎ็ญ”ใˆใจใ—ใฆใ€ใ‚ฝใƒผใƒˆใ‚’ๆœ€ใ‚‚้…ใ‚‰ใ›ใ‚‹ใ€ใคใพใ‚Š $(P_{N-K+1}, ... , P_N)$ ใ‚’ใ‚ฝใƒผใƒˆใ—ใŸใ‚‚ใฎใ‚’่งฃใฎๅ€™่ฃœ $P^{'}$ ใจใ™ใ‚‹ใ€‚ใใ†ใงใชใ„่งฃใ‚’ๆŽข็ดขใ™ใ‚‹ใ€‚

ใ‚ใ‚‹ $i$ ใซๅฏพใ—ใฆใ€ $(P_{i}, ... , P_{i+K-1})$ ใ‚’ใ‚ฝใƒผใƒˆใ™ใ‚‹ใจใใ€ $M_i = min(P_{i}, ... , P_{i+K-1})$ ใจใ—ใฆใ€ $P_i = M_i$ ใชใ‚‰ๅฐ‘ใชใใจใ‚‚ $P_{i}$ ใซใคใ„ใฆใฏใ‚ฝใƒผใƒˆใ—ใฆใ‚‚ๆใ—ใชใ„ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐใ‚ฝใƒผใƒˆใ™ใ‚‹ใจ $P$ ใฎ่พžๆ›ธๅผ้ †ๅบใŒไธ‹ใŒใฃใฆใ—ใพใ†ใ€‚ใ‚ˆใฃใฆใ‚ฝใƒผใƒˆใ™ใ‚‹ใชใ‚‰ใ€ $P_i = M_i$ ใ‚’ๆบ€ใŸใ™ $i$ ใŒใ‚ใ‚Œใฐใใ†ใ—ใŸใ„ใ€‚

ใ“ใฎใ‚ˆใ†ใช $i$ ใฎ้›†ๅˆ $S$ ใ‚’ๆฑ‚ใ‚ใ€้€ฃ็ถšใ™ใ‚‹ $i$ ใ‚’ใƒฉใƒณใƒฌใƒณใ‚ฐใ‚นๅœง็ธฎใ™ใ‚‹ใ€‚ใคใพใ‚Š $S = (A_1,C_1), ... (A_L,C_L)$ ใฏใ€้€ฃ็ถšใ™ใ‚‹ $(A_1,...,A_1+C_1-1)$ ใŒ $S$ ใซๅฑžใ™ใ‚‹ใจ่กจ็พใ™ใ‚‹ใ€‚็ต่ซ–ใ‹ใ‚‰่จ€ใ†ใจใ€ $max(A) = A_L$ ใจใ—ใฆใ€ $(P_{A_L}, ... , P_{A_L+K-1})$ ใ‚’ใ‚ฝใƒผใƒˆใ—ใŸ $P$ ใจ $P^{'}$ ใฎๅคงใใ„ๆ–นใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

็†็”ฑใ‚’่€ƒใˆใ‚‹ใ€‚ $(P_{A_L}, ... , P_{A_L+K-1})$ ใ‚’ใ‚ฝใƒผใƒˆใ—ใŸ $P^0$ ใจ $(P_{A_L+1}, ... , P_{A_L+K})$ ใ‚’ใ‚ฝใƒผใƒˆใ—ใŸ $P^{1}$ ใ‚’ๆฏ”่ผƒใ™ใ‚‹ใ€‚ $P_{A_L}$ ใซใคใ„ใฆใฏ $P^0$ ใจ $P^1$ ใง็ญ‰ใ—ใ„ใ€‚ $P_{A_L+1}$ ใซใคใ„ใฆใฏใ€ๅพŒ่€…ใซใคใ„ใฆใฏ $P$ ใฎ $P_{A_L+K}$ ใ‚’ใ‚ฝใƒผใƒˆใ™ใ‚‹ใจๅ‰ใซๆŒใฃใฆใใฆใ—ใพใ†ใ€ใคใพใ‚Š $max(P_{A_L+1}, ... , P_{A_L+K-1}) &gt; P_{A_L+K}$ ใชใ‚‰ $P^0 &gt; P^1$ ใซใชใ‚‹ใ€‚ $P^0 = P^1$ ใฏใ‚ใ‚Šใˆใ‚‹ใŒ $P^0 &lt; P^1$ ใซใฏใชใ‚‰ใชใ„ใ€‚ๅŒๆง˜ใชใ“ใจใŒ $A_L + 1..(C_L-1)$ ใซใคใ„ใฆ่จ€ใˆใ‚‹ใฎใงใ€ $A_L$ ใ‚’ๅ…ˆ้ ญใซใ‚ฝใƒผใƒˆใ™ใ‚‹ใฎใŒๆœ€้ฉ่งฃใจ่จ€ใˆใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€่ซ–็†็š„ใซๆŽข็ดขๅŒบ้–“ใ‚’้™ๅฎšใ—ใฆใ„ใ‚‹ใ€‚

ARC 166-A

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

้‡ๅฎŸ่ฃ…ใ™ใŽใฆ่งฃใ‘ใชใ‹ใฃใŸใ€‚

$Y$ ใง C ใชๅ ดๆ‰€ใฏ $X$ ใงใ‚‚ C ใงใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„(ๆ“ไฝœใง C ใฏไฝœใ‚Œใชใ„ใฎใง)ใ€‚ C ใงๅŒบๅˆ‡ใ‚‰ใ‚ŒใŸๅŒบ้–“(็ต‚็ซฏใซ C ใŒๆš—้ป™ใซใ‚ใ‚‹ใจใฟใชใ™)ใซใŠใ„ใฆใ€ๆ“ไฝœ3ใง A ใ‚’ๅณใซ็งปๅ‹•ใงใใ‚‹ใ€‚ใ“ใ“ใพใงใฏๅˆ†ใ‹ใฃใŸใŒใ€ C ใ‹ใ‚‰ A, B ใ‚’ใฉใ†ไฝœใ‚‹ใ‹ใŒๅˆ†ใ‹ใ‚‰ใชใใชใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ A ใฏใงใใ‚‹ใ ใ‘ๅทฆใซใ€ B ใฏใงใใ‚‹ใ ใ‘ๅณใซๅฏ„ใ›ใฆใ€ $X$ ใฎ A ใ‚’ $Y$ ใฎ A ใซ็งปๅ‹•ใงใใ‚‹ใ‹่ชฟในใ‚Œใฐใ„ใ„ใ€‚ใ“ใ†ๆ›ธใใจ็ฐกๅ˜ใซ่ฆ‹ใˆใ‚‹ใŒๅฎŸ่ฃ…ใŒ็ตๆง‹้‡ใ„ใ€‚้ †็•ชใซๅ‡ฆ็†ใ‚’ๆ›ธใใ€‚

  1. $Y$ ใฎ C ใงๅŒบๅˆ‡ใฃใŸใƒฉใƒณใ‚’ไฝœใ‚‹ใ€‚ๅ…ฅๅŠ›ใฎ $X,Y$ ใซ C ใ‚’่ฟฝๅŠ ใ—ใฆใŠใใจใ€็ต‚็ซฏๅ‡ฆ็†ใŒๆฅฝใซใชใ‚‹ใ€‚
  2. $X,Y$ ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰่ตฐๆŸปใ—ใฆใ€ $i$ ๆ–‡ๅญ—็›ฎใคใพใ‚Š $Y[i]$ ใŒ C ไปฅๅค–ใชใ‚‰ใ€ $X,Y$ ใฎ้€ฃ็ถš้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใฎๆœซๅฐพใซ่ฟฝๅŠ ใ™ใ‚‹
  3. $Y[i]$ ใŒ C ใชใ‚‰ใ€ $X[i]$ ใŒ C ไปฅๅค–ใชใ‚‰็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚ใใ†ใงใชใ‘ใฐไปฅไธ‹ใฎๅ‡ฆ็†ใ‚’่กŒใ†
  • $X$ ใฎ้€ฃ็ถš้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใซๅ‡บ็พใ™ใ‚‹ A,B,C ใฎๅ€‹ๆ•ฐใ‚’ $X_a, X_b, X_c$ ใจใ™ใ‚‹
  • $Y$ ใฎ้€ฃ็ถš้ƒจๅˆ†ๆ–‡ๅญ—ๅˆ—ใซๅ‡บ็พใ™ใ‚‹ A,B ใฎๅ€‹ๆ•ฐใ‚’ $Y_a, Y_b$ ใจใ™ใ‚‹
  • $X$ ใฎ C ใ‚’ A ใซ่ปขๆ›ใ—ใฆใ€ $Y$ ใจๅŒใ˜ๅ€‹ๆ•ฐใซใ™ใ‚‹ใ€‚ Aใ€€ใŒ่ถณใ‚Šใชใ„ใคใพใ‚Š $X_a &lt; Y_a$ ใฎใพใพใชใ‚‰็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚
  • $X$ ใฎ C ใ‚’ B ใซ่ปขๆ›ใ™ใ‚‹
  • $X,Y$ ใฎ B ใฎๅ€‹ๆ•ฐใŒไธ€่‡ดใ—ใชใ‘ใ‚Œใฐ็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚
  • $X,Y$ ใฎๅ…ˆ้ ญใ‹ใ‚‰ $i$ ็•ช็›ฎใฎ B ใ‚’ใใ‚Œใžใ‚Œใ€ $PX_i, PY_i$ ใจใ™ใ‚‹ใ€‚ $PX_i &lt; PY_i$ ใจใชใ‚‹ $i$ ใŒใ‚ใฃใŸใ‚‰็ญ”ใˆใฏ No ใงใ‚ใ‚‹ใ€‚
  • ไธŠ่จ˜ไปฅๅค–ใชใ‚‰็ญ”ใˆใฏ Yes ใงใ‚ใ‚‹

ARC 166-B

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

ใ‚ใ‚‹ๆ•ฐ $A_i$ ใ‚’ใ€ $a b, c, lcm(a,b), lcm(a,c), lcm(b,c), lcm(a,b,c)$ ใฎใ„ใšใ‚Œใซๅ€ๆ•ฐใ™ใ‚‹ใ‹่€ƒใˆใ‚‹ใ€‚ใใฎไธŠใง $A_i$ ใ‚’ใ‚ใ‚‹ๆ•ฐใฎๅ€ๆ•ฐใซใ—ใŸใจใใ€ไป–ใฎๆ•ฐใฎๅ€ๆ•ฐใ‚‚ๅ…ผใญใ‚‰ใ‚Œใ‚‹ใ‹ใฉใ†ใ‹ใงๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹ใ€‚

$N = 1$ ใชใ‚‰ $A_1$ ใ‚’ $lcm(a,b,c)$ ใฎๅ€ๆ•ฐใซใ™ใ‚‹ใ—ใ‹ใชใ„ใ€‚็ญ”ใˆใฏ $\lceil A_i / lcm(a,b,c) \rceil lcm(a,b,c) - A_i$ ใงใ‚ใ‚‹ใ€‚ไปฅไธ‹็•ฅ่จ˜ๆณ•ใจใ—ใฆใ€ $x$ ใ‚’ $m$ ใฎๅ€ๆ•ฐใซใ™ใ‚‹ใŸใ‚ใซๅฟ…่ฆใชๆ•ฐใ‚’ $r(x,m) = \lceil x / m \rceil m - x$ ใจ่กจ่จ˜ใ™ใ‚‹ใ€‚

$N = 2$ ใชใ‚‰ $A_1, A_2$ ใจใ‚‚ใซ $lcm(a,b,c)$ ใฎๅ€ๆ•ฐใซใ™ใ‚‹ใ—ใฆใ€ $max(r(A_1,lcm(a,b,c)), r(A_2,lcm(a,b,c)))$ ใŒ็ญ”ใˆใฎไธŠ้™ใงใ‚ใ‚‹ใ€‚ไป–ใฎๅ€™่ฃœใจใ—ใฆใ€ $A_1$ ใ‚’ $lcm(a,b)$ ใฎๅ€ๆ•ฐใ€ $A_2$ ใ‚’ $c$ ใฎๅ€ๆ•ฐใซใ™ใ‚‹ใ“ใจใŒ่€ƒใˆใ‚‰ใ‚Œใ‚‹ใ€‚ $lcm(a,c)$ ใจ $b$ , $lcm(b,c)$ ใจ $a$ ใจ็ฝฎใๆ›ใˆใฆใ‚‚ใ‚ˆใใ€ใ“ใ‚Œใ‚‰ใ‚’็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚ๆฑ‚ใ‚ๆ–นใฏๅพŒๅ›žใ—ใซใ—ใฆ่ชฌๆ˜Žใ‚’็ถšใ‘ใ‚‹ใ€‚

$N \geq 3$ ใชใ‚‰ใ•ใ‚‰ใซใ€ใ‚ใ‚‹ๆ•ฐใ‚’ $a$ ใฎๅ€ๆ•ฐใ€ๅˆฅใฎๆ•ฐใ‚’ $b$ ใฎๅ€ๆ•ฐใ€ใ•ใ‚‰ใซๅˆฅใฎๆ•ฐใ‚’ $c$ ใฎๅ€ๆ•ฐใซใงใใ‚‹ใ€‚ $r(A_{1..N}, a)$ ใ‚’ๆฑ‚ใ‚ใฆๆ˜‡้ †ใซไธฆใณๆ›ฟใˆใ€ใ‚ใ‚‹ $r$ ใฎๅ€คใซใชใ‚‹ $A_i$ ใฎๆทปใˆๅญ— $i$ ใŒๅˆ†ใ‹ใ‚‹ใ‚ˆใ†ใซใ™ใ‚‹( $r$ ใจ $i$ ใฎ็ต„ std::pair<Num,Num> ใ‚’ใ‚ฝใƒผใƒˆใ™ใ‚Œใฐใ‚ˆใ„)ใ€‚

ๅŸบๆœฌ็š„ใซ $r(x,a), r(x,b), r(x,c)$ ใฎๅฐใ•ใ„้ †ใ‹ใ‚‰ๅ–ใ‚Œใฐใ„ใ„ใŒใ€ๅŒใ˜ $A_i$ ใ‹ใ‚‰ใฏไธ€ๅบฆใ—ใ‹ๅ–ใ‚Œใชใ„ใจใ„ใ†ๅˆถ้™ใŒใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $r(x,a), r(x,b), r(x,c)$ ใฎไธ‹ไฝ3ๅ€‹ๅŒๅฃซใ‚’็ต„ใฟๅˆใ‚ใ›ใฆใ€ $A$ ใ‹ใ‚‰้‡่ค‡ใชใ3ใค้ธในใ‚‹ใชใ‚‰ใใฎ็ต„ใซใคใ„ใฆ $r$ ใ‚’่ถณใ›ใฐใ€ๅฟ…่ฆใชๆ“ไฝœๅ›žๆ•ฐใซใชใ‚‹ใ€‚ๅ…ˆใซๆˆปใ‚‹ใจใ€ $N \geq 2$ ใชใ‚‰ $r(x,lcm(a,b)), r(c)$ ใชใฉใซใคใ„ใฆไธ‹ไฝ2ๅ€‹ๅŒๅฃซใ‚’็ต„ใฟๅˆใ‚ใ›ใ‚Œใฐใ‚ˆใ„ใ€‚

ใ“ใฎใ‚ˆใ†ใชใ™ในใฆใฎ็ต„ใฟๅˆใ‚ใ›ใซใคใ„ใฆใ€ๆœ€ๅฐใฎๆ“ไฝœๅ›žๆ•ฐใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ใ“ใฎๆ–นๆณ•ใฏๅ…ฌๅผ่งฃ่ชฌใฎ่งฃๆณ•2ใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 167-A

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

ๆœ€ๅฐไบŒไน—ๆณ•

็พŽๅ‘ณใ—ใ•ใฎๅคงใใ„ใƒˆใƒผใ‚นใƒˆ $2M-N$ ๆžšใฏใใฎใพใพใซใ™ใ‚‹ใ€‚ๆฎ‹ใ‚Šใฎใƒˆใƒผใ‚นใƒˆใ‚’ $2(N-M)$ ๆžšใซใคใ„ใฆใ€็พŽๅ‘ณใ—ใ•ใจๅฐใ•ใ„ใƒˆใƒผใ‚นใƒˆ $1..2(N-M)$ ใ‹ใ‚‰้ †ใซ็พŽๅ‘ณใ—ใ•ใฎๅคงใใชใƒˆใƒผใ‚นใƒˆ $2(N-M)..1$ ใ‚‚ใฎใจไธ€็ท’ใซ็šฟใซ่ผ‰ใ›ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€0ใ‚’ใƒ‘ใƒ‡ใ‚ฃใƒณใ‚ฐใ™ใ‚‹ใ“ใจใง่จผๆ˜Žใ—ใฆใ„ใ‚‹ใ€‚ๅฎŸ่ฃ…ใฏ ใ“ใกใ‚‰

ARC 167-B

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

ไปปๆ„็ฒพๅบฆๆ•ดๆ•ฐใง้€šใ‚‹ใ€‚

้™ค็ฎ—ๅˆ‡ใ‚Šๆจใฆใ‚’modintใงใ™ใ‚‹ไธŠๆ‰‹ใ„ๆ–นๆณ•ใŒ็„กใ„ใฎใงใ€ไปปๆ„็ฒพๅบฆๆ•ดๆ•ฐ( boost::multiprecision::cpp_int )ใง่งฃใ„ใŸใ€‚ๆœ€ๅพŒใซ 998244353LL ใงๅ‰ฒใฃใฆใ‹ใ‚‰ long long int ใซใ™ใ‚‹(int ใซใ—ใฆใ‹ใ‚‰ๅ‰ฒใ‚‹ใจ้–“้•ใˆใ‚‹)ใ€‚

$A$ ใ‚’็ด ๅ› ๆ•ฐๅˆ†่งฃใ—ใ€็ด ๆ•ฐ $P_i$ ใŒ $C_i$ ๅ€‹ใ‚ใ‚‹ใจใ™ใ‚‹ใ€‚ $A^B$ ใ‚’็ด ๅ› ๆ•ฐๅˆ†่งฃใ—ใŸใ‚‰ใ€็ด ๆ•ฐ $P_i$ ใŒ $B \times C_i$ ๅ€‹ใ‚ใ‚‹ใ€‚็ด ๆ•ฐ $P_i$ ใซ็€็›ฎใ—ใŸใจใใ€ $A^B$ ใฎ็ด„ๆ•ฐใจใ—ใฆ็ด ๆ•ฐ $P_i$ ใฏ $B \times C_i (B \times C_i + 1) / 2$ ๅ€‹ๅซใฟใ€ $P_i$ ไปฅๅค–ใฎ็ด ๆ•ฐใฎ็ต„ใฟๅˆใ‚ใ›ใฏ $Q_i = \prod_{i \ne j} (C_j + 1)$ ๅ€‹ใ‚ใ‚‹ใ€‚

ใ‚ˆใฃใฆ $P_i$ ใ ใ‘่€ƒใˆใ‚‹ใจใ€ $A^B$ ใฏ $A$ ใง $\lfloor B \times C_i (B \times C_i + 1) Q_i / 2 C_i \rfloor$ ๅ›žใคใพใ‚Š $\lfloor B (B \times C_i + 1) Q_i / 2 \rfloor$ ๅ›žๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใ€‚ใ“ใ“ใง้™ค็ฎ—ใงไฝ™ใ‚ŠใŒๅ‡บใชใ„ใ“ใจใ‚’ไฟ่จผใงใใชใ„ใฎใงใ€modintใงใฏใชใๆญฃ็ขบใชๅ€คใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

ๅ…จใฆใฎ $P_i$ ใซใคใ„ใฆใฎๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃๆณ•ใฏใ€2ใงๅ‰ฒใ‚‹ๅ‰ใฎๅˆ†ๅญใŒๅฅ‡ๆ•ฐใซใชใ‚‹็Šถๆณใ‚’ๅฐŽๅ‡บใ—ใฆใ„ใ‚‹ใ€‚

ARC 168-A

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

่ปขๅ€’ๆ•ฐใซใชใ‚‹ใฎใฏ้€ฃ็ถšใ™ใ‚‹็Ÿญ่ชฟๆธ›ๅฐ‘ใฎไธญใ ใ‘ใงใ‚ใ‚‹ใ€‚ใชใœใชใ‚‰็Ÿญ่ชฟๆธ›ๅฐ‘ใŒๆญขใพใฃใŸใ‚‰ใ€ใใฎๆฌกใฎๅ˜่ชฟๅข—ๅŠ ใ‚’ๅๅˆ†้ซ˜ใ„ๅ€คใซๅข—ใ‚„ใ™ใ“ใจใงใ€ใใ‚Œไปฅๅ‰ใฎๆ•ฐใ‚ˆใ‚Šๅคงใใใงใใ‚‹ใ‹ใ‚‰ใ ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏๅ…ทไฝ“็š„ใชๅ€คใ‚’ไฝฟใฃใฆใ„ใฆใ€่€ƒใˆๆ–นใฏๅŒใ˜ใงใ‚ใ‚‹ใ€‚

้€ฃ็ถšใ™ใ‚‹็Ÿญ่ชฟๆธ›ๅฐ‘ใŒ้•ทใ• $L$ ใชใ‚‰ใ€ใใฎ่ปขๅ€’ๆ•ฐใฏ $L(L+1)/2$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ใใ‚Œใžใ‚Œใฎ้€ฃ็ถšใ™ใ‚‹็Ÿญ่ชฟๆธ›ๅฐ‘ใซใคใ„ใฆๆ•ฐใˆใฆ่ถณใ™ใจ็ญ”ใˆใซใชใ‚‹ใ€‚

ARC 168-B

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

$A_i$ ใ‚’ๅฏพๆถˆๆป…ใงใใ‚‹ใชใ‚‰ใ—ใฆใŠใ(ๅถๆ•ฐๅ€‹ใชใ‚‰็„กใ‹ใฃใŸใ“ใจใซใ—ใ€ๅฅ‡ๆ•ฐๅ€‹ใชใ‚‰1ๅ€‹ใซใ™ใ‚‹)ใ€ๆ™ฎ้€šใฎNimใฏ $\oplus A$ ใŒ0ไปฅๅค–ใชใ‚‰ๅ…ˆๆ‰‹ๅฟ…ๅ‹ใ€ใพใงใฏๅˆ†ใ‹ใฃใŸใ€‚ใชใฎใง $\oplus A$ ใŒ0ใงๅพŒๆ‰‹ๅฟ…ๅ‹ใฎใจใใ€ใ‚ใ‚‹ $k$ ใงๅ…ˆๆ‰‹ๅฟ…ๅ‹ใซใ™ใ‚Œใฐใ‚ˆใ„ใ€‚

  • $A_i$ ใŒ็ฉบใชใ‚‰ 0
  • $\oplus A \ne 0$ ใชใ‚‰ -1

ใ—ใ‹ใ—่‚ๅฟƒใชGrundyๆ•ฐใ‚’ไธŠๆ‰‹ใๅฎš็พฉใงใใชใ‹ใฃใŸใ€‚Grundyๆ•ฐใฎๅฎš็พฉใ‚’ๅ…ฌๅผ่งฃ่ชฌ้€šใ‚Šใซ่กŒใ†ใจACใ™ใ‚‹ใ€‚

ARC 169-A

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

ๆนงใๅ‡บใ—ใ‚’่€ƒใˆใ‚‹ใ€‚

$1 \leq P_i &lt; i$ ใ‹ใ‚‰ใ€ $i$ ใจ $P_i$ ใฏ้ ‚็‚น1ใ‚’ๆ นใจใ™ใ‚‹ๆœจๆง‹้€ ใฎ้–ขไฟ‚ใซใ‚ใ‚‹ใ€‚ใ“ใฎใ‚ˆใ†ใชใ‚ฐใƒฉใƒ•ใ‚’ๆง‹็ฏ‰ใ—ใ€ๆ นใ‹ใ‚‰ใฎ่ท้›ข $0 \leq d &lt; N$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

้ ‚็‚น1ใคใพใ‚Šๆ นใ‹ใ‚‰ใ‚‚ใฃใจ้ ใ„้ ‚็‚นใ‹ใ‚‰็„ก้™ใซๆนงใๅ‡บใ—ใŸๅ€คใŒใ€ไป–ใฎ้ ‚็‚นใซๆณขๅŠใ™ใ‚‹ใ€‚ใใ“ใง $d$ ใŒ็ญ‰ใ—ใ„้ ‚็‚นใฎๅ€คใ‚’่ถณใ—ใฆ $S_d$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ $S_d : d = N-1..0$ ใ‚’้ †็•ชใซ่ตฐๆŸปใ—ใฆใ€ๆœ€ๅˆใซๆญฃใฎๅ€คใ‚’่ฆ‹ใคใ‘ใŸใ‚‰ + ใ€ๆœ€ๅˆใซ่ฒ ใฎๅ€คใ‚’่ฆ‹ใคใ‘ใŸใ‚‰ - ใ€ๆญฃ่ฒ ใฉใกใ‚‰ใ‚‚่ฆ‹ใคใ‹ใ‚‰ใชใ‘ใ‚Œใฐ 0 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

่€ƒใˆๆ–นใจใ—ใฆใฏใ€ๆœ€ใ‚‚ $d$ ใŒๅคงใใ„้ ‚็‚น็พคใฎๆนงใๅ‡บใ—ใŒๆญฃใพใŸใฏ่ฒ ใชใ‚‰ใ€็„ก้™ๅ›žใงใฏ $P_1$ ใŒๆญฃใพใŸใฏ่ฒ ใฎ็„ก้™ๅคงใซๅ‘ใ‹ใ†ใ€‚0ใ ใฃใŸใ‚‰ๆฌกใซ $d$ ใŒๅคงใใ„้ ‚็‚น็พคใฎๆนงใๅ‡บใ—ใ‚’่€ƒใˆใ‚‹ใ€ใจใ„ใ†ใฎใ‚’็นฐใ‚Š่ฟ”ใ™ใ€‚

ARC 169-B

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

ๅขƒ็•Œๅ€คใŒใ‚„ใ‚„ใ“ใ—ใ„ใ€‚

$f(x)$ ใซใคใ„ใฆใ€ๅณ็ซฏ $R=x$ ใจใ—ใฆๅŒบ้–“ $[L,R]$ ใ‚’่€ƒใˆใŸๆ™‚ใซใ€ $\sum_{i=L}^{R} A_i \leq S$ ใชใ‚‹ $L$ ใ‚’ๅฎšใ‚ใ‚‰ใ‚Œใ‚‹ใจใ™ใ‚‹ใ€‚

  • $L = 1$ ใชใ‚‰ใ€ๅทฆ็ซฏใ‹ใ‚‰ $A_R$ ใพใง่ถณใ—ใŸๅ’ŒใŒ $S$ ไปฅไธ‹ใงใ‚ใ‚‹ใ€‚ใ“ใฎใจใใ€ $f([i,R])=1 : i=1..R$ ใงใ‚ใ‚‹ใ€‚ $f(x)$ ใฎ็ดฏ็ฉๅ’Œใ‚’ $g(x) = \sum_i f(i)$ ใจใ—ใฆใ€ $g(x) = x : x=1..R$ ใงใ‚ใ‚‹ใ€‚
  • $L &gt; 1$ ใชใ‚‰ $f([i,R])=1 : i=L..R$ ใงใ‚ใ‚‹ใ€‚ใ“ใฎ้ƒจๅˆ†ใซใคใ„ใฆ $g(R)=R-L+1$ ใงใ‚ใ‚‹ใ€‚ใ•ใ‚‰ใซ $i &lt; L$ ใซใคใ„ใฆใ€ๆœ€ๅพŒใฎไธ€ๅŒบ้–“ใ‚’ๅŠ ใˆใ‚‹ๅฏพ่ฑกใŒ $1..(L-1)$ ใฎ $L-1$ ้€šใ‚Šใงใ€ๅŠ ใˆใ‚‰ใ‚Œใ‚‹ $f()$ ใฎ็ทๅ’ŒใŒ $g(L-1)$ ใชใฎใงใ€ $R + g(L-1)$ ใงใ‚ใ‚‹ใ€‚

็ญ”ใˆใฏ $g()$ ใฎ็ทๅ’Œใงใ‚ใ‚‹ใ€‚ $L$ ใฎๆฑ‚ใ‚ๆ–นใŒใ‚„ใ‚„ใ“ใ—ใ„ใ€‚

ARC 170-A

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

$i=1..N$ ๆ–‡ๅญ—็›ฎใซใคใ„ใฆใ€ $S,T$ ใง $i$ ๆ–‡ๅญ—็›ฎใŒ็•ฐใชใ‚‹ๅ ดๆ‰€ใ‚’่จ˜้Œฒใ™ใ‚‹ใ€‚ใ‚ˆใ‚Šๅ…ทไฝ“็š„ใซใฏใ€ $S[i] = B \land T[i] = A$ ใชๅ ดๆ‰€( Bใ‚’ A ใซใ—ใŸใ„ๅ ดๆ‰€)ใจใ€ $S[j] = A \land T[j] = B$ ใชๅ ดๆ‰€( A ใ‚’ B ใซใ—ใŸใ„ๅ ดๆ‰€)ใ‚’ใใ‚Œใžใ‚Œ่จ˜้Œฒใ™ใ‚‹ใ€‚

ใ“ใ“ใ‹ใ‚‰ๅฐบๅ–ใ‚Šๆณ•ใงๆฑ‚ใ‚ใ‚‹ใ€‚B ใ‚’ A ใซใ—ใŸใ„ๅ ดๆ‰€( $i$ )ใจใ€ A ใ‚’ B ใซใ—ใŸใ„ๅ ดๆ‰€( $j$ )ใฎใ‚‚ใฃใจใ‚‚ๅฐใ•ใ„ๆทปใˆๅญ—ใ‚’ๅˆๆœŸๅ€คใจใ™ใ‚‹ใ€‚ไฝตใ›ใฆๆœ€ใ‚‚ๅทฆใฎ $i=left$ ใจๆœ€ใ‚‚ๅณใฎ $j=right$ ใ‚’ใ‚ใ‚‰ใ‹ใ˜ใ‚ๆฑ‚ใ‚ใฆใŠใใ€‚

  • $i$ ใŒๅฐฝใใŸใ‚‰ใ€ๆœ€ๅทฆใฎ $i=left$ ใซใคใ„ใฆใ€ $k &lt; left$ ใชใ‚‹ $k$ ใซใคใ„ใฆ $S_k$ ใ‚’ A ใ‹ใ‚‰ A ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ใใฎใ‚ˆใ†ใช $k$ ใŒๅๅˆ†ใŸใใ•ใ‚“ใชใ‘ใ‚Œใฐ็ฝฎใๆ›ใˆใ‚‰ใ‚Œใชใ„ใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐๆฎ‹ใ‚Šใฎ $j$ ใ‚’ใ™ในใฆ A ใ‹ใ‚‰ B ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚
  • $j$ ใŒๅฐฝใใŸใ‚‰ใ€ๆœ€ๅณใฎ $j=right$ ใซใคใ„ใฆใ€ $right &lt; k$ ใชใ‚‹ $k$ ใซใคใ„ใฆ $S_k$ ใ‚’ B ใ‹ใ‚‰ B ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ใใฎใ‚ˆใ†ใช $k$ ใŒๅๅˆ†ใŸใใ•ใ‚“ใชใ‘ใ‚Œใฐ็ฝฎใๆ›ใˆใ‚‰ใ‚Œใชใ„ใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใใ†ใงใชใ‘ใ‚Œใฐๆฎ‹ใ‚Šใฎ $i$ ใ‚’ใ™ในใฆ B ใ‹ใ‚‰ A ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚
  • $i &lt; j$ ใชใ‚‰ใ€ $S_i$ ใ‚’ A ใงใ€ $S_j$ ใ‚’ B ใง็ฝฎใๆ›ใˆใ‚‹ๆ“ไฝœใ‚’ใพใจใ‚ใฆ่กŒใ„ใ€ๆฌกใฎ $i,j$ ใซ็งปใ‚‹ใ€‚
  • $i &gt; j$ ใชใ‚‰ใ€ $S_i$ ใ‚’ A ใซ็ฝฎใๆ›ใˆใ€ $i &lt; k$ ใชใ‚‹ $k$ ใŒใ‚ใ‚Œใฐ B ใ‚’ B ใซ็ฝฎใๆ›ใˆใ€ๆฌกใฎ $i$ ใซ็งปใ‚‹ใ€‚ใใฎใ‚ˆใ†ใช $k$ ใŒใชใ‘ใ‚Œใฐ็ฝฎใๆ›ใˆใ‚‰ใ‚Œใชใ„ใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

$i$ ใ‚’ๆ›ดๆ–ฐใ—ใŸใ‚‰ $left = min(left, i)$ ใซใ€ $j$ ใ‚’ๆ›ดๆ–ฐใ—ใŸใ‚‰ $right = max(right, i)$ ใซๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

ARC 170-B

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

้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจ

ๅทฆๅณใฎๅน…ใฏๅบƒใๅ–ใ‚Šใ™ใŽใฆใ‚‚ๅ•้กŒใชใ„ใ€‚ใคใพใ‚Š $(A_i,A_j,A_k)$ ใŒ็ญ‰ๅทฎๆ•ฐๅˆ—ใชใ‚‰ใ€ๅทฆๅดใฏ $[1,i]$ ใ€ๅณๅดใฏ $[k,N]$ ใ‹ใ‚‰ไปปๆ„ใฎๅ€คใ‚’็ต„ใฟๅˆใ‚ใ›ใ‚‰ใ‚Œใ‚‹ใ€‚ๅฆ‚ไฝ•ใซใ‚‚ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใงๆ›ดๆ–ฐใ™ใ‚‹ใจใ‚ˆใ•ใใ†ใงใ‚ใ‚‹ใ€‚ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใซใฏใ€ $i$ ใŒๅ–ใ‚Šใ†ใ‚‹ๆœ€ๅฐใฎ $k$ ใ‚’่จ˜้Œฒใ™ใ‚‹ใ€‚

$(A_i,A_j,A_k)$ ใฎๅ€คใฏ 1..10 ใ‹ใ‚‰็ทๅฝ“ใŸใ‚Šใ™ใ‚‹ใ€‚ใ™ในใฆใฎ $i$ ใซใคใ„ใฆใ€ $i$ ใŒๆฑบใพใ‚Œใฐ $A_i$ ใฏไธ€ๆ„ใซๆฑบใพใ‚Šใ€ $A_j$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใจ $A_k$ ใฎๅ€คใŒไธ€ๆ„ใซๆฑบใพใ‚‹ใฎใงใ€ $A_k$ ใจใชใ‚‹ๆœ€ใ‚‚ๅฐใ•ใ„ $j,k$ ใŒๆฑ‚ใพใ‚‹ใ€‚ใ“ใ‚Œใฏใ‚ใ‚‰ใ‹ใ˜ใ‚ 1..10 ใฎๅ‡บ็พไฝ็ฝฎใ‚’ๆฑ‚ใ‚ใฆ็ฝฎใ‘ใฐไบŒๅˆ†ๆŽข็ดขใงๆฑ‚ใพใ‚‹ใ€‚ $[1,i]$ ใฎๆœ€ๅฐๅ€คใ‚’ $[k,N]$ ใจใฎๆœ€ๅฐๅ€คใงๆ›ดๆ–ฐใ™ใ‚‹ใ€‚ๅŒบ้–“ๆ›ดๆ–ฐใชใฎใง้…ๅปถใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใ‚’ไฝฟใ†ใ€‚

ๅ…ฌๅผ่งฃ่ชฌ2ใฎๆ–นๆณ•ใซไผผใฆใ„ใ‚‹ใ€‚

ARC 171-180

ARC 171-A

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

ไปฎใซใƒซใƒผใ‚ฏใ‚’ๅฏพ่ง’็ทšไธŠใซ็ฝฎใใ€‚ใ“ใฎ้…็ฝฎใฏใƒซใƒผใ‚ฏๅŒๅฃซใŒๆ”ปๆ’ƒใ—ใ‚ใ‚ใชใ„ใ“ใจใ‚’ๆบ€ใŸใ™ใ€‚ $N \leq A$ ใชใ‚‰ใƒใƒผใƒณใ‚’ใ™ในใฆๅฏพ่ง’็ทšไธŠใซ็ฝฎใใ“ใจใŒใงใใ‚‹ใ€‚ $N &lt; A$ ใชใ‚‰็ฝฎใใ“ใจใŒใงใใชใ„ใฎใงๅณๅบงใซ No ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ๆฌกใซใƒใƒผใƒณใ‚’็ฝฎใใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚ๆจชๆ–นๅ‘(ๅˆ—ๆ–นๅ‘ใซใฏ) $N - A \geq 0$ ๅ€‹็ฝฎใ‘ใ‚‹ใ€‚ใ“ใ“ใง็ธฆๆ–นๅ‘(่กŒ)ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚ใƒซใƒผใ‚ฏใŒไธ€ๅ€‹ใ‚‚็„กใ‘ใ‚Œใฐๆจชๆ–นๅ‘(ๅˆ—ๆ–นๅ‘ใซใฏ) $N$ ๅ€‹ใ€่กŒๆ–นๅ‘ใซใฏไธ€่กŒ็›ฎใซไธ€่กŒ้ฃ›ใฐใ—ใง $\lfloor (N+1)/2 \rfloor$ ่กŒใ€่จˆ $N \lfloor (N+1)/2 \rfloor$ ๅ€‹็ฝฎใ‘ใ‚‹ใ€‚

่กŒใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใฆใ€ๅฏ่ƒฝใช้™ใ‚Šๅถๆ•ฐ่กŒใซใƒใƒผใƒณใŒ็„กใ„ใ‚ˆใ†ใซใ™ใ‚‹ใ“ใจใ‚’่€ƒใˆใ‚‹ใ€‚ใ“ใฎใจใใƒใƒผใƒณใŒ็„กใ„่กŒใฏ $H=max(\lfloor (N+1)/2 \rfloor, N-A)$ ่กŒไฝœใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚ใ‚ˆใฃใฆ $(N-A)H &lt; B$ ใชใ‚‰ No ใ‚’ใ€ใใ†ใงใชใ‘ใ‚Œใฐ Yes ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ARC 171-B

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

ๅ…ฅๅŠ›ไพ‹ใ‹ใ‚‰ๅฏŸใ—ใŸใ€‚

่งฃๆณ•ใŒๅˆ†ใ‹ใ‚‰ใชใ„ใฎใงใ€ๅ…ฅๅŠ›ไพ‹3ใ‚’ๅ…จๆŽข็ดขใ—ใŸใ€‚ไปฅไธ‹ใฎ18้€šใ‚Šใฎ $P$ ใŒๆŒ™ใŒใ‚‹ใ€‚

2 6 7 1 3 4 8 5
2 6 7 1 3 5 8 4
2 6 7 1 4 3 8 5
2 6 7 1 4 5 8 3
2 6 7 1 5 3 8 4
2 6 7 1 5 4 8 3
2 6 7 3 1 4 8 5
2 6 7 3 1 5 8 4
2 6 7 3 4 1 8 5
2 6 7 3 4 5 8 1
2 6 7 3 5 1 8 4
2 6 7 3 5 4 8 1
2 6 7 4 1 3 8 5
2 6 7 4 1 5 8 3
2 6 7 4 3 1 8 5
2 6 7 4 3 5 8 1
2 6 7 4 5 1 8 3
2 6 7 4 5 3 8 1

ไฝ•ใจใชใ่ฆๅ‰‡ๆ€งใŒไบˆๆƒณใงใใ‚‹ใ€‚ 666, 888 ใฎใใ‚Œใžใ‚Œๅ…ˆ้ ญ2ๆ•ฐใŒๅ›บๅฎšใงใ‚ใ‚‹ใ€‚

$B_i &lt; P_{B_i}$ ใฎใจใๆ“ไฝœๅฏ่ƒฝใงใ‚ใ‚‹ใ“ใจใ‹ใ‚‰ใ€ๅˆๆœŸ็Šถๆ…‹ $B_i = i$ ใซใŠใ„ใฆ $B_i = i &gt; A_i$ ใ ใจๅ›ฐใ‚‹ใ€‚ๅŒๆง˜ใซ $B_i &gt; A_i$ ใ ใจๅ›ฐใ‚‹ใฎใงใ€ $P_i \leq A_i$ ใงใ‚ใฃใฆๆฌฒใ—ใ„ใ€‚ใ“ใฎใ‚ˆใ†ใช $P_i$ ใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ๆฑ‚ใ‚ใ‚‹ใ€‚

  • $i=1..N$ ใซใคใ„ใฆใ€ $i = A_j$ ใจใชใ‚‹ใ‚ˆใ†ใช $A_j$ ใฎ้›†ๅˆ $G_i$ ใ‚’ๆฑ‚ใ‚ใ‚‹
  • $max(G_i) \ne i$ ใชใ‚‰่งฃใชใ—(0้€šใ‚Š)ใงใ‚ใ‚‹ใ€‚ใ“ใฎใจใ $B_i = i &gt; A_i$ ใซใชใ‚‹ใ‹ใ‚‰ใงใ‚ใ‚‹ใ€‚
  • $max(G_i) = i$ ใชใ‚‰
    • $|G_i| = 1$ ใชใ‚‰็‰นใซๅฏพๅ‡ฆใ—ใชใ„
    • $|G_i| = S &gt; 1$ ใชใ‚‰ใ€ $G_i$ ใฎๆœซๅฐพไปฅๅค–ใ‚’ใ‚ทใƒ•ใƒˆใ—ใฆ $P$ ใซ่จญๅฎšใ™ใ‚‹ใ€‚ $G_i= [G_{i,1}, ..., G_{i,S}]$ ใจใ—ใฆ $P_{G_{i,j}} = G_{i,j+1} : j &lt; S$ ใซๅ›บๅฎšใ™ใ‚‹ใ€‚

$|G_i| = S &gt; 1$ ใชใ‚‰ใ€ๅ•้กŒๆ–‡ใซใ‚ใ‚‹ๆ“ไฝœใ‚’็นฐใ‚Š่ฟ”ใ™ใจ $G_i$ ใฎๅ…ˆ้ ญ $S-1$ ่ฆ็ด ใŒ $max(G_i)$ ใซใชใ‚‹ใ€‚

่งฃใ‚ใ‚Šใฎใจใใซใ€ๅ›บๅฎšใ—ใฆใ„ใชใ„็•ชๅทใซไฝ•้€šใ‚Š้ธในใ‚‹ใ‹ๆฑ‚ใ‚ใ‚‹ใ€‚

  • ๅˆๆœŸๅ€ค $C_0=1$ ใจใ™ใ‚‹
  • $i$ ใซใคใ„ใฆ $P_i$ ใฎ้ธใณๆ–นใ‚’ $C_i$ ้€šใ‚Šใจใ™ใ‚‹ใ€‚ใ“ใ“ใง
    • $P_i$ ใŒๅ›บๅฎšใ•ใ‚Œใฆใ„ใ‚Œใฐ1้€šใ‚Š
    • $P_i$ ใŒๅ›บๅฎšใ•ใ‚Œใฆใ„ใชใ‘ใ‚Œใฐ $C_i = i - seen(i) - cnt(i)$
    • $seen(i)$ ใฏ $P_1..i$ ใฎใ†ใกใ€ใ™ใงใซๅ›บๅฎšใ•ใ‚ŒใŸ่ฆ็ด ๆ•ฐใ€‚ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใซ่ผ‰ใ›ใฆ $P_i$ ใ‚’1ๅข—ใ‚„ใ™ใ€‚
    • $cnt(i)$ ใฏ $P_1..i$ ใฎใ†ใกใ€ๅ›บๅฎšใ•ใ‚Œใฆใ„ใชใ„่ฆ็ด ๆ•ฐใ€‚ $P_i$ ใ‚’ๅ›บๅฎšใ—ใฆใ„ใชใ‘ใ‚Œใฐ1ๅข—ใ‚„ใ™ใ€‚
  • ใ“ใ†ใ—ใฆๆฑ‚ใ‚ใŸ $\prod_{i=0}^N C_i$ ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ไธŠ่จ˜ใฏใ‚ตใ‚คใ‚ฏใƒซๅˆ†่งฃใงใ‚ใ‚Šใ€ๅ…ฌๅผ่งฃ่ชฌใ‚‚ใใฎใ‚ˆใ†ใชๆ–น้‡ใงใ‚ใ‚‹ใ€‚ๅ…ฌๅผ่งฃ่ชฌใฏ้กŒๆ„ใ‚’ไธŠๆ‰‹ใใ‚ฐใƒฉใƒ•ใฎๆ€ง่ณชใซ่จ€ใ„ๆ›ใˆใฆใ„ใ‚‹ใ€‚

ARC 172-A

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

Greedyใง่งฃใ‘ใ‚‹ใ€‚

ใƒใƒงใ‚ณใƒฌใƒผใƒˆใฎ้•ทๆ–นๅฝข็‰‡ใฎ็ธฆๆจชใฎ้•ทใ•ใ‚’ $(PY, PX)$ ใจใŠใใ€‚ไธ€่ˆฌๆ€งใ‚’ๅคฑใ‚ใšใซ $PY \leq PX$ ใจ่€ƒใˆใฆๆง‹ใ‚ใชใ„ใ€‚ๆœ€ๅˆใฏ $(H,W)$ ใจใ™ใ‚‹( $H &gt; W$ ใชใ‚‰ $H$ ใจ $W$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ€ไปฅไธ‹ๅŒๆง˜)ใ€‚

$A$ ใ‚’้™้ †ใซใ‚ฝใƒผใƒˆใ—ใฆใ€ $(L,L) : L = 2^{A}$ ใŒ้•ทๆ–นๅฝข็‰‡ใซๅŽใพใ‚‹ใ‹ใฉใ†ใ‹่ชฟในใ‚‹ใ€‚ๅŽใพใ‚ŒใฐๅŽใ‚ใŸๆฎ‹ใ‚Šใ‹ใ‚‰ๆ–ฐใŸใช้•ทๆ–นๅฝข็‰‡ใ‚’ไฝœใ‚‹ใ€‚ใ“ใฎใจใ้•ทๆ–นๅฝข็‰‡ใ‚’ $(PY, PX)$ ใฎ้™้ †ใซใ‚ฝใƒผใƒˆใ—ใฆ(ๅ„ชๅ…ˆๅบฆใ‚ญใƒฅใƒผใ‚’ไฝฟใ†)ใ€ $(L, L)$ ใŒๅŽใพใ‚‹้•ทๆ–นๅฝข็‰‡ใ‚’้ธใถใ‚ˆใ†ใซใ™ใ‚‹ใ€‚ใใฎใจใๅญ˜ๅœจใ™ใ‚‹ๆœ€ๅคงใฎ้•ทๆ–นๅฝข็‰‡ใงๆง‹ใ‚ใชใ„ใ€‚ $L$ ใฏ2ใฎในใไน—ใซ้™ใ‚‹ใฎใงใ€ $L$ ใ‚’ๅŽใ‚ใ‚‰ใ‚Œใ‚‹ใชใ‚‰ $L/2$ ใ‚‚ๅฟ…ใšๅŽใพใ‚‹ใ€‚

ใ“ใ‚Œใ‚’็นฐใ‚Š่ฟ”ใ—ใฆใ€ใ™ในใฆใฎ $A$ ใ‚’้•ทๆ–นๅฝข็‰‡ใซๅŽใ‚ใ‚‹ใ“ใจใŒใงใใŸใ‚‰ Yes , ใใ†ใงใชใ‘ใ‚Œใฐ No ใงใ‚ใ‚‹ใ€‚

$(PY,PX)$ ใซ $(L,L)$ ใ‚’ๅŽใ‚ใŸๆฎ‹ใ‚Šใฏไปฅไธ‹ใฎใ„ใšใ‚Œใ‹ใงใ‚ใ‚‹ใ€‚

  • $(0,0) \quad if \quad PY = L \land PX = L$
  • $(L,PX-L) \quad if \quad PY = L \land PX &gt; L$
  • $(PY-L,L), (PY,PX-L) \quad otherwise$

ๅ…ฌๅผ่งฃ่ชฌใฏใ€ $L$ ใŒ2ใฎในใไน—ใซ้™ใ‚‹ใ“ใจใซๆณจ็›ฎใ—ใฆใ‚‚ใฃใจใ‚จใƒฌใ‚ฌใƒณใƒˆใซ่งฃใ„ใฆใ„ใ‚‹ใ€‚

ARC 172-B

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

ๆกไปถใ‚’ๆบ€ใŸใ•ใชใ„ๆ–‡ๅญ—ๅˆ—ใจใฏใ€ $s$ ใฎใ‚ใ‚‹็จฎใฎๆ–‡ๅญ— $c$ ใ‚’่ค‡ๆ•ฐใฎๅ ดๆ‰€ใ‹ใ‚‰้ธในใ‚‹ๆ–‡ๅญ—ๅˆ—ใงใ‚ใ‚‹ใ€‚ๆกไปถใ‚’ๆบ€ใŸใ™ใซใฏใ€ $c$ ใ‚’ๅๅˆ†ๅผ•ใ้›ขใ—ใฆ่ค‡ๆ•ฐใฎๅ ดๆ‰€ใ‹ใ‚‰้ธในใชใ„ใ‚ˆใ†ใซใ™ใ‚‹ใ€‚ $c$ ใฎไฝ็ฝฎใ‚’ $W=N-K$ ใ‚ˆใ‚Šๅคšใ้›ขใ›ใฐใ„ใ„ใ€‚

ใ‚ˆใฃใฆๆ–‡ๅญ—ใฎ้ธใณๆ–นใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

  • $s$ ใฎ 1ๆ–‡ๅญ—็›ฎใฏ $L$ ้€šใ‚Š
  • $s$ ใฎ 2ๆ–‡ๅญ—็›ฎใฏ $L-1$ ้€šใ‚Š
  • $s$ ใฎ 3ๆ–‡ๅญ—็›ฎใฏ $max(L-min(2,W))$ ้€šใ‚Š
  • ใ‚ˆใ‚Šไธ€่ˆฌ็š„ใซใฏใ€ $s$ ใฎ $i$ ๆ–‡ๅญ—็›ฎใฏ $max(L-min(i-1,W))$ ้€šใ‚Š

ใ“ใ‚Œใ‚’ๆŽ›ใ‘ใŸใ‚‚ใฎใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚ $L$ ใŒ่ถณใ‚Šใชใ„ใคใพใ‚Š้ธในใ‚‹ๆ–‡ๅญ—ใŒๅฐฝใใŸใจใใฏใ€ไน—็ฎ—็ตๆžœใŒ้€”ไธญใง0ใซใชใ‚‹ใฎใง็ญ”ใˆใฏ0ใงใ‚ใ‚‹ใ€‚

ARC 172-C

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

ๆทปใˆๅญ—ใ‚’ไธ€ๅ€‹้–“้•ใˆใฆ่ซฆใ‚ใŸใ€‚

ไธๆญฃ่งฃใฏ ใ“ใกใ‚‰ ใงใ€ๆœ€ๅพŒใฎใƒซใƒผใƒ—ใŒไธ€ๅ€‹่ถณใ‚Šใชใ„(2ใ‹ใ‚‰ๅง‹ใ‚ใฆใ„ใ‚‹ใŒๆญฃใ—ใใฏ1ใงใ‚ใ‚‹)ใ€‚ใ“ใ“ใ•ใˆ็›ดใ›ใฐๆญฃ่งฃใงใใŸใŒใ€่งฃๆณ•ใซ่‡ชไฟกใŒ็„กใ„ใจๆฐ—ใŒไป˜ใ‹ใชใ„ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใ‚ใ‚‹้€šใ‚Šใ€ๆŠ•็ฅจ่€…1ใ‚’ๆŒฟๅ…ฅใ™ใ‚‹ใฎใ‚’ๅ…จ้ƒจ่ฉฆใ›ใฐใ„ใ„ใ€‚ๅˆฅ่งฃใจใ—ใฆไธŠ่จ˜ใฎ้€šใ‚Šใ€ๅค‰ๅŒ–็‚นใ‚’ๆ•ฐใˆใฆใ‚‚ใ‚ˆใ„ใ€‚

ARC 173-A

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

ๆกDP

$K$ ใซใคใ„ใฆใ€ Neq NumberใŒ $K$ ๅ€‹ไปฅไธ‹ใซใชใ‚‹ใ‚ˆใ†ใช $X$ ใ‚’ไบŒๅˆ†ๆŽข็ดขใงๆฑ‚ใ‚ใ‚‹ใ€‚

ๆœ€ไธŠไฝๆกใŒ้ž0 (leading zeroใ‚’้™คๅŽปใ—ใŸ)ใชๆ•ฐ $Y$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ™ใ‚‹ใ€‚ $DP[i][j]$ ใ‚’

  • 0..9 ใฎไปปๆ„ใฎๆ•ฐใ‚’้ธใถใจ $Y$ ใ‚’่ถ…ใˆใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใชใ‚‰ $i = 1$ , ใใ†ใงใชใ‘ใ‚Œใฐ $i = 0$
  • ไปŠๆณจ็›ฎใ—ใฆใ„ใ‚‹ๆกใŒ $j = 0..9$

ใจใ™ใ‚‹ใ€‚ $Y$ ใŒ $W$ ๆกใจใ—ใฆใ€ $Y$ ใฎๅ„ๆกใ‚’ไธŠใฎๆกใ‹ใ‚‰้ †ใซ $D_{1..N}$ ใจใ™ใ‚‹

ใพใšๆœ€ไธŠไฝๆกใซ่จญๅฎšใงใใ‚‹ๆ•ฐๅญ— $P_1 \in [1..9]$ ใฎๅ–ใ‚Šใ†ใ‚‹็ต„ใฟๅˆใ‚ใ›ใฏใ€

  • $P_1 &lt; D_1$ ใชใ‚‰ใ€ $dp[0][P_1] = 1$ ใ€‚ใคใพใ‚Šไธ‹ไฝๆกใ‚’ไปปๆ„ใซ 0..9 ใ‚’็ต„ใฟๅˆใ‚ใ›ใฆใ‚‚ $Y$ ใ‚’่ถ…ใˆใชใ„ใ€‚
  • $P_1 = D_1$ ใชใ‚‰ใ€ $dp[1][P_1] = 1$ ใ€‚ใคใพใ‚Šไธ‹ไฝๆกไธŠๆ‰‹ใ้ธใฐใชใ„ใจ $Y$ ใ‚’่ถ…ใˆใฆใ—ใพใ†ใ€‚
  • ไธŠ่จ˜ไปฅๅค–ใฏ0

ใงใ‚ใ‚‹ใ€‚ๆฌกใซๆœ€ไธŠไฝๆกไปฅๅค–ใฎไธŠใ‹ใ‚‰ $i$ ๆก็›ฎใซ่จญๅฎšใงใใ‚‹ๆ•ฐๅญ— $P_i \in 0..9$ ใฎๅ–ใ‚Šใ†ใ‚‹็ต„ใฟๅˆใ‚ใ› $next$ ใฏใ€

  • $P_i &lt; D_i$ ใชใ‚‰ใ€ $next[0][P_i] = dp[0][P_{i-1}] + dp[1][P_{i-1}]$ ใ€‚ใคใพใ‚Š $Y$ ใ‚’่ถ…ใˆใใ†ใ ใฃใŸใ‚‚ใฎใ‚‚ใ€ไปŠๅพŒใฏ่ถ…ใˆใชใใชใ‚‹ใ€‚
  • $P_i = D_i$ ใชใ‚‰ใ€ $next[0][P_i] = dp[0][P_{i-1}], next[1][P_i] = dp[1][P_{i-1}]$ ใ€‚ใคใพใ‚Š $Y$ ใ‚’่ถ…ใˆใชใ„ใ‚‚ใฎใฏ่ถ…ใˆใชใ„ใพใพใ ใ—ใ€่ถ…ใˆใใ†ใชใ‚‚ใฎใฏ่ถ…ใˆใใ†ใชใพใพใงใ‚ใ‚‹ใ€‚
  • $P_i &gt; D_i$ ใชใ‚‰ใ€ $next[0][P_i] = dp[0][P_{i-1}]$ ใ€‚ใคใพใ‚Š $Y$ ใ‚’่ถ…ใˆใชใ„ใ‚‚ใฎใฏ่ถ…ใˆใชใ„ใพใพใ ใ—ใ€่ถ…ใˆใใ†ใชใ‚‚ใฎใฏ้ธในใชใ„ใ€‚

ใงใ‚ใ‚‹ใ€‚ใ“ใฎๆกไปถไธ‹ใงใ€ $P_i \neq P_{i-1}$ ใช 0..9 ใฎ็ต„ใฟๅˆใ‚ใ›100้€šใ‚Šใ‚’็ถฒ็พ…ใ—ใฆ $dp$ ใ‚’ $next$ ใงๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

ๆœ€ไธŠไฝๆกใ‚’้ž0ใจใ—ใŸใฎใงใ€ $Y$ ใซใคใ„ใฆใฎ Neq Numberใฏใ€ $Y$ ใใฎใ‚‚ใฎใซใคใ„ใฆใฎไธŠ่จ˜ใฎๅ€คใจใ€ $Y$ ใ‚ˆใ‚ŠๆกใŒๅฐใ•ใ9ใŒไธฆใถๆ•ฐใ€ใคใพใ‚Š $(10^0 - 1), ..., (10^{W-1} - 1)$ ใซใคใ„ใฆใฎไธŠ่จ˜ใฎๅ€คใฎๅ’Œใงใ‚ใ‚‹ใ€‚ใ“ใฎใจใ $Y$ ใฎๅ…จๆกใŒ9ใฎๅ ดๅˆใ‚’ไบŒๅบฆๆ•ฐใˆใชใ„ใ‚ˆใ†ใซใ™ใ‚‹(ใ“ใ‚Œใง1 WAใ—ใŸ)ใ€‚

ใ“ใ“ใพใงๆฅใŸใฎใงใ€ $[1,10^{17}]$ ใซใคใ„ใฆไบŒๅˆ†ๆŽข็ดขใ—ใฆใ€Neq NumberใŒ $K$ ๅ€‹ไปฅไธ‹ใซใชใ‚‹ๆœ€ๅฐใฎ $Y$ ใ‚’็ญ”ใˆใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฏใ€ๆฌกใฎๆกใŒ9้€šใ‚Šใ‹0้€šใ‚Šใ‹ใฉใกใ‚‰ใ‹ใ—ใ‹ใชใ„ใ“ใจใ‚’ไฝฟใฃใฆDPใ‚’็ฐก็•ฅๅŒ–ใ—ใฆใ„ใ‚‹ใ€‚

ARC 173-B

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

่งฃ่ชฌใ‚’่ชญใ‚€ใพใงๅ…จใๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

็›ด็ทš $L$ ใซใŸใใ•ใ‚“็‚นใŒไน—ใฃใฆใ„ใฆใ€ๆฎ‹ใ‚ŠใŒ $\lfloor N / 3 \rfloor$ ๆœชๆบ€ใชใ‚‰ใใฎ็‚นใจ $L$ ใฎ็‚นใ‚’็ตใถใ€‚่จ€ใ‚ใ‚Œใฆใฟใ‚Œใฐๅˆ†ใ‹ใ‚‹ใŒ่‡ชๅŠ›ใงใฏๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚

$(X,Y)$ ใจ $(X+DX, Y+DY)$ ใ‚’้€šใ‚‹็›ด็ทšใฎไธ€ๆ„ใช่กจ็พใฏใ€ $Y$ ่ปธใฎๅˆ‡็‰‡ใจๅ‚พใใฎๆœ‰็†ๆ•ฐ่กจ็พ $(SX, SY, DX, DY)$ ใซใ™ใ‚‹ใจๅพ—ใ‚‰ใ‚Œใ‚‹ใ€‚

  • $X$ ใŒๅค‰ใ‚ใ‚‰ใชใ„ใคใพใ‚Šๅž‚็›ดใ€ $Y$ ่ปธใซๅนณ่กŒใชใ‚‰ $(SX=X, SY=0, DX=0, DY=1)$
  • $Y$ ใŒๅค‰ใ‚ใ‚‰ใชใ„ใคใพใ‚Šๆฐดๅนณใ€ $X$ ่ปธใซๅนณ่กŒใชใ‚‰ $(SX=0, SY=Y, DX=1, DY=0)$
  • ใใ‚Œไปฅๅค–ใฏ $(SX=DX, SY=Y \times DX - X \times DY, DX=DX, DY=DY)$ ใ€‚ใŸใ ใ—ไปฅไธ‹ใฎๅค‰ๆ›ใ‚’่กŒใฃใŸๅพŒใงใ‚ใ‚‹ใ€‚
    • ๅ‚พใ $(DX,DY)$ ใฏ $gcd(DX,DY)$ ใงๅ‰ฒใฃใฆใ€ $X$ ใŒ่ฒ ใชใ‚‰ $(DX,DY)$ ใฎ็ฌฆๅทใ‚’ๅ่ปขใ™ใ‚‹
    • $Y$ ่ปธใฎๅˆ‡็‰‡ใฏ $Y - X \times DY / DX$ ใชใฎใงใ€ๅˆ†ๆฏใ‚’ๆŽ›ใ‘ใฆๆ•ดๆ•ฐใซใ—ใ€ๅˆ†ๆฏใ‚’ $SX$ ใซใ™ใ‚‹ใ€‚

ARC 174-A

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

่Œถdiffใซไธ€ๆ™‚้–“ๅŠ

$A$ ใ‚’ๅค‰ใˆใชใ„ใฎใฏ $C = 0$ ใงใฏใชใ $C = 1$ ใงใ‚ใ‚‹ใ€‚ใ“ใฎ้–“้•ใ„ใซๆฐ—ใŒไป˜ใ‹ใš1ๆ™‚้–“ไปฅไธŠๆบถใ‹ใ—ใŸใ€‚

ๅทฆๅณใ‹ใ‚‰่ฆใ‚‰ใชใ„่ฆ็ด ใ‚’ๅ‰Šใฃใฆๆฎ‹ใฃใŸ้€ฃ็ถšๅˆ—ใ‚’ $C$ ๅ€ใ™ใ‚Œใฐใ„ใ„ใ€‚ $l$ ใ‚’ๆฑบใ‚ๆ‰“ใกใ—ใŸ่งฃๆณ•ใฏไปฅไธ‹ใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚ $A$ ใฎ็ทๅ’Œใ‚’ $S$ ใจใ™ใ‚‹ใ€‚ $A$ ใฏ็ญ”ใˆใฎไธ€ใคใชใฎใงใ€ใใ‚Œไปฅๅค–ใฎๅ€คใ‚’ไธ‹่จ˜ใฎ้€šใ‚ŠๆŽข็ดขใ—ใฆๆœ€ๅคงๅ€คใ‚’ๆ›ดๆ–ฐใ™ใ‚‹ใ€‚

  • $C = 1$ ใชใ‚‰ใ€ $S$ ใŒ็ญ”ใˆใงใ‚ใ‚‹
  • $C &gt; 1$ ใชใ‚‰ใ€ $l$ ใŒๅ›บๅฎšใชใ‚‰ $max [l,r] for r \in (l+1)..N$ ใจใชใ‚‹ $r$ ใ‚’ๆฑ‚ใ‚ใฆใ€ $A_l..A_r$ ใ‚’ $C-1$ ๅ€ใ—ใŸใ‚‚ใฎใ‚’ $S$ ใซๅŠ ใˆใ‚‹ใ€‚ใ™ในใฆใฎ $l$ ใซใคใ„ใฆใฎๆœ€ๅคงๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚
  • $C &lt; 1$ ใชใ‚‰ใ€ $l$ ใŒๅ›บๅฎšใชใ‚‰ $min [l,r] for r \in (l+1)..N$ ใจใชใ‚‹ $r$ ใ‚’ๆฑ‚ใ‚ใฆใ€ $A_l..A_r$ ใ‚’ $C-1$ ๅ€ใ—ใŸใ‚‚ใฎใ‚’ $S$ ใซๅŠ ใˆใ‚‹ใ€‚ใ™ในใฆใฎ $l$ ใซใคใ„ใฆใฎๆœ€ๅคงๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

็ดฏ็ฉๅ’Œใ‚’ใ‚ปใ‚ฐใƒกใƒณใƒˆๆœจใซ่ผ‰ใ›ใ‚‹ใ“ใจใงใ€ๅŒบ้–“ใฎๆœ€ๅคงๆœ€ๅฐๅ€คใŒๅˆ†ใ‹ใ‚‹ใ€‚ $cumsum[l,r] = cumsum[1,r] - cumsum[1,l-1]$ ใชใฎใงใ€ $l$ ใ‚’ๅ›บๅฎšใ—ใŸใจใใซ $cumsum[1,r]$ ใ‚’ๆœ€ๅคงใซใ™ใ‚‹ $r$ ใฏ $cumsum[l,r]$ ใ‚‚ๆœ€ๅคงใซใ™ใ‚‹ใ€‚ๆœ€ๅฐๅ€คใ‚‚็„ถใ‚Šใ€‚

ARC 174-B

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

ไธŠ่จ˜ใฎ็ท‘ใจใฏๆ‰“ใฃใฆๅค‰ใ‚ใฃใฆ31ๅˆ†ใง่งฃใ‘ใŸใ€‚

็งใฎๅ ดๅˆใ€ARCใฏ่งฃ็ญ”ๆ™‚้–“ใฎใฐใ‚‰ใคใใŒๅคงใใ„ใ€‚่งฃใฎๆ–น้‡ใฏ็ซ‹ใฃใŸใŒใ€ๅ ดๅˆๅˆ†ใ‘ใ‚’ๆ•ด็†ใ™ใ‚‹ใฎใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใฆใ—ใพใฃใŸใ€‚

่ฒทใ†ใƒฌใƒ“ใƒฅใƒผใฏๆ˜Ÿ4,5ใ—ใ‹ๆ„ๅ‘ณใŒ็„กใ„ใ€‚ๆ˜Ÿ1,2,3ใ‚’่ฒทใฃใฆใ‚‚ๅนณๅ‡่ฉ•ไพกใ‚’ๆ˜Ÿ3ๆœชๆบ€ใ‹ใ‚‰ๆ˜Ÿ3ไปฅไธŠใซไธŠใ’ใ‚‹ใ“ใจใฏใงใใชใ„ใ‹ใ‚‰ใ ใ€‚

$R = A_1 + A_2 + A_3 + A_4 + A_5$ , $S = 1 \times A_1 + 2 \times A_2 + 3 \times A_3 + 4 \times A_4 + 5 \times A_5$ ใจใ™ใ‚‹ใ€‚ๆ˜Ÿ4ใฎใƒฌใƒ“ใƒฅใƒผใ‚’ $B_4$ ไปถ่ฒทใ„ใ€ๆ˜Ÿ5ใฎใƒฌใƒ“ใƒฅใƒผใ‚’ $B_5$ ไปถ่ฒทใฃใฆใ€ $(S + 4 \times B_4 + 5 \times B_5) / (R + B_4 + B_5) \geq 3$ ใ‚’้”ๆˆใ—ใŸใ„ใ€‚

ใ“ใ‚Œใ‚’ๅผๅค‰ๅฝขใ™ใ‚‹ใจใ€ $(S + 4 \times B_4 + 5 \times B_5) \geq 3(R + B_4 + B_5) \geq 3$ ใ‹ใ‚‰ $B_4 + 2 \times B_5 \geq 3R - S$ ใ‚’ๅพ—ใ‚‹ใ€‚ๆ•ดๆ•ฐไธ็ญ‰ๅผๅˆถ็ด„ๅ•้กŒใ ใŒใ€2ๅค‰ๆ•ฐใ—ใ‹ใชใ„ใฎใงๅ ดๅˆๅˆ†ใ‘ใง่งฃใ‘ใ‚‹ใ€‚ๅˆคๆ–ญๅŸบๆบ–ใฏใ€ๆ˜Ÿ5ใฏๆ˜Ÿ4ไบŒใคๅˆ†ใฎไพกๅ€คใŒใ‚ใ‚‹ใ‹ๅฆใ‹ใงใ‚ใ‚‹ใ€‚ๆœ€ไฝŽ้™่ฒทใ†ๅฟ…่ฆใŒใ‚ใ‚‹ไพกๅ€คใ‚’ $V = 3R - S$ ใจ็ฝฎใใ€‚

  • $V &lt; 0$ ใชใ‚‰ใใ‚‚ใใ‚‚ๆ˜Ÿใ‚’่ฒทใ†ๅฟ…่ฆใฏใชใ„ใฎใง็ญ”ใˆใฏ0ใงใ‚ใ‚‹
  • $B_4 &gt; B_5$ ใชใ‚‰ๆ˜Ÿ4ใ‚’่ฒทใ†ๆ„ๅ‘ณใฏใชใใ€ๆ˜Ÿ5ใ ใ‘่ฒทใˆใฐใ„ใ„ใ€‚็ญ”ใˆใฏ $\lceil V/ 2 \rceil B_5$ ใงใ‚ใ‚‹ใ€‚
  • $2 \times B_4 &gt; B_5 \geq B_4$ ใชใ‚‰ๆ˜Ÿ5ใง2ไพกๅ€คใ‚’่ฒทใ„ใ€1ไพกๅ€คใŒ็ซฏๆ•ฐใชใ‚‰ๆ˜Ÿ4ใ‚’่ฒทใ†ใ€‚็ญ”ใˆใฏ $\lfloor V / 2 \rfloor B_5 + (V mod2) B_4$ ใงใ‚ใ‚‹ใ€‚
  • ไธŠ่จ˜ไปฅๅค–ใ€ $B_5 \geq 2 \times B_4$ ใชใ‚‰ๆ˜Ÿ5ใ‚’่ฒทใ†ๆ„ๅ‘ณใฏใชใใ€ๆ˜Ÿ4ใ ใ‘่ฒทใˆใฐใ„ใ„ใ€‚็ญ”ใˆใฏ $V B_4$ ใงใ‚ใ‚‹ใ€‚

ARC 174-C

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

ๆ˜Žใ‚‰ใ‹ใซๆœŸๅพ…ๅ€คDPใชใฎใ ใŒ่งฃใ‘ใชใ‹ใฃใŸใ€‚ $\sum_{i=0}^{\infty} a^i = 1 / (1 - a)$ ใŒๅˆ†ใ‹ใ‚Œใฐ่งฃใ‘ใ‚‹ใฏใšใชใฎใ ใŒใ€ๆ‰‹็•ชใŒๅ…ฅใ‚Œๆ›ฟใ‚ใ‚‹็ขบ็އใŒใ‚ใฃใฆใ„ใฆใ€็ฝฐ้‡‘ใฎๅข—ๅˆ†ใŒ้–“้•ใฃใฆใ„ใŸใ€‚ๅ‡บใŸๆ•ดๆ•ฐใฎ็จฎ้กžๆ•ฐใ‚’ $q$ ใจใ—ใฆใ€ใƒ’ใƒƒใƒˆใ™ใ‚‹็ขบ็އใฏ $q = q/N$ ใ€็ฝฐ้‡‘ใฎๅข—ๅˆ†ใฏ $p + p^3 + p^5 + ... = p / (1 - p^2)$ ใชใฎใ ใŒใ€ใชใœใ‹ใ“ใฎๅˆ†ๆฏ $p$ ใŒ้–“้•ใฃใฆใ„ใŸใ€‚

ARC 174-D

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

ๅฎŸ้จ“ใ—ใŸใ‚‰21ๅˆ†ใง่งฃใ‘ใฆใ—ใพใฃใŸใ€‚A,Bๅ•้กŒใ‚ˆใ‚Š้€Ÿใ„ใ€‚

่งฃๆž่งฃใซ่ฆ‹ๅฝ“ใŒใคใ‹ใชใ„ใฎใงๅ€™่ฃœใ‚’ๅˆ—ๆŒ™ใ—ใŸใ‚‰ใ€ 1, 80, 90-99, 100-109, 9800, 9900-10099, 998000, 999000-1000999, ... ใŒ่ฆ‹ใคใ‹ใ‚‹ใ€‚ใ‚ˆใฃใฆ่งฃ 1 ไปฅๅค–ใซใคใ„ใฆใฏใ€ $i=1..$ ใซใคใ„ใฆ $W_i = 10^i$ , $B_i = 100^i$ ใจใ—ใฆใ€ $B_i-2W_i, [B_i-W_i,B_i+W_i)$ ใŒ่งฃใจไบˆๆƒณใงใใ‚‹ใ€‚ใ“ใฎ้€šใ‚ŠๅฎŸ่ฃ…ใ—ใŸใ‚‰ACใ—ใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใซใฏ่ซ–่จผใŒใ‚ใ‚‹ใŒใ€ๅฎŸ้จ“็ตๆžœใ‚’ใใฎใพใพๅฎŸ่ฃ…ใ™ใ‚‹ใจACใงใใ‚‹ใ“ใจใŒๅ‰ๆใ ใฃใŸใ€‚

ARC 175-A

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

ๅ…จใ่งฃใ‘ใ‚‹ๆฐ—ใŒใ—ใชใ„ใ€‚

ๆœ€็ต‚ๅฝขๆ…‹ใ‚’ๆƒณๅฎšใ™ใ‚Œใฐ่งฃใ‘ใ‚‹ใ“ใจใŒๅˆ†ใ‹ใ‚‰ใชใ‹ใฃใŸใ€‚ๅ‡บๅŠ›ไพ‹ใ‚’ใฟใ‚‹ใจใ€็ซ‹ใฃใฆใ„ใ‚‹ใƒ“ใƒƒใƒˆใฏ้ซ˜ใ€…2ใคใชใฎใงใ€2ใฎ้šŽไน—ใ‚’2ๅ€‹่ถณใ—ใŸใ‚‚ใฎใจๆฐ—ใฅใ‘ใฐ่งฃใ‘ใŸใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

ๆœ€็ต‚็ตๆžœใฏๅ…จๅ“กๅทฆๅดใ‚’ๅ–ใ‚‹ใ‹ใ€ๅ…จๅ“กๅณๅดใ‚’ๅ–ใ‚‹ใ‹ใฉใกใ‚‰ใ‹ใ—ใ‹ใชใ„ใ€‚ใฉใกใ‚‰ใ‹ๆฑบใ‚ๆ‰“ใกใ—ใฆใ‚ทใƒŸใƒฅใƒฌใƒผใ‚ทใƒงใƒณใ™ใ‚‹ใ€‚ $L,R$ ใฎใฉใกใ‚‰ใŒ็•ชๅทใŒๅข—ใˆใ‚‹ใ‹ๅ•้กŒๆ–‡ใ‚’ใ‚ˆใ่ชญใ‚€ใ€‚0-based indexing ใจใ—ใฆใ€ใ“ใ“ใงใฏๅณๆ‰‹ใŒ $(p + 1) Mod N$ ใ€ๅทฆๆ‰‹ใŒ $p Mod N$ ใงใ‚ใ‚‹ใ€‚

  • ๆฑบใ‚ๆ‰“ใกใ—ใŸๅทฆๅณใฎใ‚นใƒ—ใƒผใƒณใ‚’ใ™ใงใซๅ–ใ‚‰ใ‚Œใฆใ„ใŸใ‚‰ใ€0้€šใ‚Šใงใ‚ใ‚‹
  • ? ใฎใจใใ€ๆฑบใ‚ๆ‰“ใกใ—ใŸๅทฆๅณใฎใ‚นใƒ—ใƒผใƒณใฎๅๅฏพๅดใ‚’ใ™ใงใซๅ–ใ‚‰ใ‚Œใฆใ„ใŸใ‚‰ LR ใ‚’ๅ•ใ‚ใชใ„ใฎใง2้€šใ‚Šใ€ใใ†ใงใชใ‘ใ‚Œใฐ1้€šใ‚Šใงใ‚ใ‚‹ใ€‚
  • LR ใฏๅ•้กŒๆ–‡้€šใ‚Šใซๅ–ใฃใฆ1้€šใ‚Šใงใ‚ใ‚‹ใ€‚ใใฎ็ตๆžœใ€ๅพŒใฎไบบใฏใ‚นใƒ—ใƒผใƒณใŒๅ–ใ‚Œใชใ„ใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ€‚

ARC 175-B

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

ๅ…ฅใ‚Œๆ›ฟใˆๆ“ไฝœใงใ€ $S$ ใซๅซใพใ‚Œใ‚‹ ( ใจ ) ใฎๆ•ฐใ‚’ๅค‰ใˆใ‚‹ใ“ใจใฏใงใใชใ„ใ€‚ใ‚ˆใฃใฆ็ฝฎใๆ›ใˆๆ“ไฝœใŒ่ฆใ‚‹ใ€‚ ( ใŒ $L$ ๅ€‹ใ€ ) ใŒ $R$ ๅ€‹ใ‚ใ‚‹ใจใใ€ $L &gt; R$ ใชใ‚‰ $(L - R) / 2$ ๅ€‹ใฎ ) ใ‚’ ( ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ใ“ใฎใจใๆœ€ๅทฆใฎ ) ใ‹ใ‚‰้ †ใซ ( ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚ใชใœใชใ‚‰ ( ใŒๅทฆใซใ‚ใ‚‹ใปใฉๆญฃใ—ใ„ๆ‹ฌๅผงๅˆ—ใ‚’ไฝœใ‚Šใ‚„ใ™ใ„ใ‹ใ‚‰ใ ใ€‚ๅŒๆง˜ใซ $L &lt; R$ ใชใ‚‰ $(R - L) / 2$ ๅ€‹ใฎ ( ใ‚’ๅณใ‹ใ‚‰ใ‹ใ‚‰้ †ใซ ) ใซ็ฝฎใๆ›ใˆใ‚‹ใ€‚

ๅพŒใฏ ( ใจ ) ใฎไธๆ•ดๅˆใŒใ‚ใ‚Œใฐ็ฝฎใๆ›ใˆใ‚‹ใ€‚็ฝฎใๆ›ใˆไธ€ๅ›žใฎใ‚ณใ‚นใƒˆใฏ $min(A, 2B)$ ใงใ‚ใ‚‹ใ€‚ $S$ ใ‚’ๅทฆใ‹ใ‚‰้ †ใซใฟใฆใ„ใใ€ๆญฃใ—ใใชใ„ ) ใฎไฝ็ฝฎใจใ€ ) ใจใฎๅฏพๅฟœใŒๅ–ใ‚Œใฆใ„ใชใ„ ( ใฎไฝ็ฝฎใ‚’่จ˜้Œฒใ™ใ‚‹ใ€‚ใใฎๅพŒใ€ๆœ€ๅทฆใฎๆญฃใ—ใใชใ„ ) ใฎไฝ็ฝฎใจใ€ๆœ€ๅณใซใ‚ใ‚‹ ) ใจใฎๅฏพๅฟœใ‚’้ †ใซๅ–ใฃใฆใ„ใใ€‚

ARC 176-A

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

่ซฆใ‚ใŸใ€‚ไปฅไธ‹0-based indexingใง่ชฌๆ˜Žใ—ใ€ $(A,B)$ ใ‹ใ‚‰1ๅผ•ใ„ใฆใŠใใ€‚

$(0,0)..(N-1,N-1)$ ใฎๆ–œใ‚็ทšใ‚’ใšใ‚‰ใ—ใชใŒใ‚‰ $M$ ๆœฌๅผ•ใ‘ใฐใ„ใ„ใจๅˆ†ใ‹ใฃใŸใฎใ ใŒใ€ใฉใ†ใ„ใ†่จณใ‹่กŒๅˆ—ใ‚’ไธŠๆ‰‹ใๅ…ฅใ‚Œๆ›ฟใˆใฆ $(A,B)$ ใ‚’ๆ‹พใ‚ใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใจๆ€ใฃใฆ่งฃใ‘ใชใ‹ใฃใŸใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ชญใ‚“ใ ใ‚‰ใ€ๅˆฅใซๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ๅฟ…่ฆใชใ‹ใฃใŸใ€‚ $(A,B)$ ใŒ้‡ใชใ‚‹ใ‚ˆใ†ใช $(0,N-1)..(N-1,01)$ ใฎๆ–œใ‚็ทšใŒ้‡ใชใ‚‹ใ‚ˆใ†ใชใšใ‚Œๆ–นใŒๆฑ‚ใพใ‚‹ใ€‚ $ofs=(A+B)modN$ ใ ใ‘ๅทฆใซใšใ‚‰ใ›ใฐใ„ใ„ใ€‚ $ofs$ ใŒ $M$ ๅ€‹ใชใ‘ใ‚Œใฐใ€่ถณใ‚Šใชใ„ๅˆ†ใฏ็ฉบใ„ใฆใ„ใ‚‹ใจใ“ใ‚ใ‚’ไฝฟใ†ใ€‚

ARC 176-B

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

$K+1 = M$ ใฎใจใใฏใ€ $2^K$ ใงๅ‰ฒใ‚‹ใ€‚ใ‚ˆใฃใฆ $n \leq k$ ใชใ‚‰ๅ‰ฒใ‚Šๅˆ‡ใ‚Œใ‚‹ใฎใง0ใ€ใใ†ใงใชใ‘ใ‚Œใฐ $2^N mod 10$ ใงใ‚ใ‚‹ใ€‚

$K+1 &lt; M$ ใฎใจใใฏใ€2ใฎในใไน—ไปฅๅค–ใงๅ‰ฒใ‚‹ใฎใงใ€ใใฎๆ–นๆณ•ใ‚’่€ƒใˆใ‚‹ใ€‚

$2^N = 2^{N-M} (2^M - 2^K) + 2^{N-(M-K)}$ ใ‚ˆใ‚Šใ€ $2^N$ ใ‚’ $M-K$ ๆกๆธ›ใ‚‰ใ—ใฆ $2^{N-(M-K)}$ ใซใงใใ‚‹ใ€‚ใ“ใ‚Œใ‚’ $2^N$ ใŒ2้€ฒๆ•ฐใง $M$ ๆกๆœชๆบ€ใซใชใ‚‹ใพใง็นฐใ‚Š่ฟ”ใ™ใ€‚ใ“ใฎ็นฐใ‚Š่ฟ”ใ—ใฏใ€ $n &lt; m$ ใชใ‚‰ $C=0$ ๅ›žใ€ใใ†ใงใชใ‘ใ‚Œใฐ $C = \lceil (n - (m - 1)) / (M-K) \rceil$ ๅ›žใงใ‚ใ‚‹ใ€‚็ญ”ใˆใฏ $2^{N - C(M-K)} mod 10$ ใงใ‚ใ‚‹ใ€‚

ARC 177-A

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

ไน…ใ—ใถใ‚ŠใฎARC ็ฐdiffใงใ‚ใ‚‹ใ€‚

ๅคงใฏๅฐใ‚’ๅ…ผใญใ‚‹ใ€‚ใคใพใ‚Š500ๅ††็กฌ่ฒจใฏ100ๅ††็กฌ่ฒจใ‚’ๅ…ผใญใ€100ๅ††็กฌ่ฒจใฏ50ๅ††็กฌ่ฒจใ‚’ใ€50ๅ††็กฌ่ฒจใฏ10ๅ††็กฌ่ฒจใ‚’ใ€10ๅ††็กฌ่ฒจใฏ5ๅ††็กฌ่ฒจใ‚’ใ€5ๅ††็กฌ่ฒจใฏ1ๅ††็กฌ่ฒจใ‚’ๅ…ผใญใ‚‹ใ€‚ใ‚ˆใฃใฆๅคงใใช้‡‘้กใ‹ใ‚‰้ †ใซไฝฟใ„ใ€่ถณใ‚ŠใชใใชใฃใŸใ‚‰ๅฐใ•ใช้‡‘้กใงๆ‰•ใ†ใ‚ˆใ†ใซใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ใ“ใ†ใ™ใ‚Œใฐๅคงใใช้‡‘้กใงใŠ้‡ฃใ‚ŠใŒๅฟ…่ฆใชๅ ด้ขใŒใ€ๅฐใ•ใช้‡‘้กใงใŠ้‡ฃใ‚ŠใŒ่ฆใ‚‰ใชใ„ๅ ด้ขใ‚ˆใ‚ŠๅพŒใซๆฅใ‚‹ใ“ใจใฏ็„กใใชใ‚‹ใ€‚

ๅพŒใฏ่ฒทใ„็‰ฉใฎ้ †็•ชใซใคใ„ใฆ้ †ๅˆ—็ต„ใฟๅˆใ‚ใ›ใ‚’ๅ…จ้ƒจ่ฉฆใ›ใฐใ‚ˆใ„ใ€‚ใจๆ€ใฃใŸใ‚‰ใ€้ †ๅˆ—ใฏ้–ขไฟ‚ใชใ„ใ“ใจใŒๅ…ฌๅผ่งฃ่ชฌใงๅˆ†ใ‹ใฃใŸใ€‚

ARC 177-B

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

ใ‚‚ใฎใ™ใ”ใไน…ใ—ใถใ‚ŠใฎARC Bๅ•้กŒ ็ฐdiffใงใ‚ใ‚‹ใ€‚ๅ…ฅๅŠ›ไพ‹ใฎๅฆฅๅฝ“ๆ€งใ‚’็ขบใ‹ใ‚ใšใซ10ๅˆ†ไปฅๅ†…ใซๆๅ‡บใ—ใฆACใ—ใŸใ€‚

1-based indexingใงใ€ๆœ€ๅณใซใ‚ใ‚‹1ใŒ $i$ ็•ช็›ฎใซใ‚ใ‚‹ใจใ™ใ‚‹ใ€‚ๆ“ไฝœ $A$ ใ‚’ $i$ ๅ›žใ€ๆ“ไฝœ $B$ ใ‚’ $i-1$ ๅ›žๅฎŸ่กŒใ™ใ‚‹ใจใ€ๅˆๆœŸ็Šถๆ…‹ใ‹ใ‚‰ $i$ ็•ช็›ฎใ ใ‘ใ‚’1ใ€ใใ‚Œไปฅๅค–ใ‚’0ใซใงใใ‚‹ใ€‚

ใ“ใฎ่ฆ้ ˜ใงใ€ๆœ€ๅณใซใ‚ใ‚‹1ใ‹ใ‚‰้ †ใซ0ใ‹ใ‚‰1ใซๅค‰ใˆใ‚Œใฐใ‚ˆใ„ใ€‚ๆ“ไฝœๅ›žๆ•ฐใฏ้ซ˜ใ€… $N^2$ ๅ›žใชใฎใงใ€ $10^6$ ๅ›žใซใฏๅๅˆ†้–“ใซๅˆใ†ใ€‚ๅ…ฌๅผ่งฃ่ชฌใจๅŒใ˜่งฃใๆ–นใงใ‚ใ‚‹ใ€‚

ARC 177-C

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

็ท‘diffใŒ่งฃใ‘ใŸใ€‚

ๅทฆไธŠใ‹ใ‚‰ๅณไธ‹ใธใฎ็ตŒ่ทฏใจใ€ๅทฆไธ‹ใ‹ใ‚‰ๅณไธŠใธใฎ็ตŒ่ทฏใฏใ€ๅฐ‘ใชใใจใ‚‚1ใƒžใ‚นใ‚’ๅ…ฑๆœ‰ใ™ใ‚‹ใ€‚ใชใœใชใ‚‰ใƒžใ‚นใ‚’ๅ…ฑๆœ‰ใ—ใชใ„็ตŒ่ทฏใฏๆง‹็ฏ‰ไธๅฏ่ƒฝใ ใ‹ใ‚‰ใ ใ€‚

ใใ“ใงๅ››้š…ใ‹ใ‚‰ใฎไป–ใฎใƒžใ‚นใธใฎ่ท้›ขใ‚’01-BFSใงๆฑ‚ใ‚ใ‚‹ใ€‚ใ“ใ“ใง่ท้›ขใจใฏใ€ๅง‹็‚นใจใฏ่‰ฒใŒ้•ใ†ใƒžใ‚นใฎๆ•ฐใงใ‚ใ‚‹ใ€‚ๅง‹็‚นใฏๅˆถ็ด„ใ‹ใ‚‰่ท้›ข0ใจใ—ใ€็ต‚็‚นใฎใƒžใ‚นใฎ่‰ฒใฏ ๆ•ฐใˆใชใ„ ใ€‚ใใฎๆ‰‹ๅ‰ใพใงใฎ่ท้›ขใ‚’่จ˜้Œฒใ™ใ‚‹(ใ†ใฃใ‹ใ‚ŠๅฎŸ่ฃ…ใ‚’้–“้•ใˆใŸใฎใ ใŒๅฎŸใฏๆญฃ่งฃใ ใฃใŸ)ใ€‚

ใ“ใ†ใ™ใ‚‹ใจใ€ใใ‚Œใžใ‚Œใฎใƒžใ‚นใ‹ใ‚‰ๅ››้š…ใธใฎ่ท้›ขใฎๅ’Œ + 1ใŒใ€ใ‚ใ‚‹ใƒžใ‚นใ‚’ๅ…ฑๆœ‰ใ—ใŸใจใใซ็ดซ่‰ฒใซๅค‰ใˆใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใƒžใ‚นใฎๆœ€ๅฐๆ•ฐใงใ‚ใ‚‹ใ€‚+ 1ใ—ใŸใฎใฏๅ…ฑๆœ‰ใ™ใ‚‹ใƒžใ‚นใฏๅฟ…ใš็ดซใซใ—ใชใ‘ใ‚Œใฐใชใ‚‰ใชใ„ใ‹ใ‚‰ใ ใ€‚ใ‚ใจใฏๅ››้š…ใ‚’ๅซใ‚ใฆใ™ในใฆใฎใƒžใ‚นใซใคใ„ใฆใ“ใ‚Œใ‚‰ใฎๅ€คใ‚’ๆฑ‚ใ‚ใ€ๆœ€ๅฐๅ€คใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚’่ฆ‹ใŸใ‚‰ใ€2็ตŒ่ทฏใงๅ…ฑๆœ‰ใ™ใ‚‹ใƒžใ‚นไบ‘ใ€…ใ‚’่€ƒใˆใ‚‹ๅฟ…่ฆใฏใชใ„ใ€ใชใœใชใ‚‰่ตคใ‹ใ‚‰็ดซใซๅค‰ใˆใ‚‹ใฎใจ้’ใ‹ใ‚‰็ดซใซๅค‰ใˆใ‚‹ใฎใฏ็‹ฌ็ซ‹ใชไบ‹่ฑกใชใฎใงใ€ใจๅˆ†ใ‹ใฃใŸใ€‚ใ“ใ‚Œใ‚’ใจใฃใ•ใซๆ€ใ„ใคใใ“ใจใŒใงใใชใ„ใ€‚

ARC 178-A

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

้กŒๆ„ใ‚’่ชญใฟ่งฃใใฎใŒใ‹ใชใ‚Šๅคงๅค‰ใงใ‚ใ‚‹ใ€‚

$A$ ใ‚’ๆ˜‡้ †ใซไธฆในใ‚‹ใ€‚ $A_1 = 1$ ใชใ‚‰่งฃใชใ—ใชใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใ“ใ“ใ‹ใ‚‰ $A$ ใซๆฒฟใฃใฆๅฎŸ้š›ใซๆ‰‹ใ‚’ๅ‹•ใ‹ใ—ใฆใฟใ‚‹ใ€‚

$2 \in A$ ใฎใจใใ€้€ฃ็ถšๅˆ— $[1,2]$ ใ‚’ๅดฉใ™ใซใฏ้–“ใซ 3 ใ‚’ๆŒŸใ‚“ใง $[1,3,2]$ ใซใ™ใ‚Œใฐใ‚ˆใ„ใ€‚ $2 \notin A$ ใฎใจใใ€้€ฃ็ถšๅˆ— $[1,2]$ ใ‚’ๅดฉใ™ๅฟ…่ฆใชใใ€่งฃใฏ่พžๆ›ธ้ †ใชใฎใงๅ…ˆ้ ญใ‹ใ‚‰ $[1,2]$ ใ‚’ไธฆในใ‚‹ใ€‚

$3 \in A$ ใฎใจใใ€้€ฃ็ถšๅˆ— $[1,2,3]$ ใพใŸใฏ $[1,3,2]$ ใ‚’ๅดฉใ™ใซใฏ้–“ใซ 4 ใ‚’ๆŒŸใ‚ใฐใ‚ˆใ„ใ€‚่พžๆ›ธ้ †ใงๆœ€ๅฐใชใฎใง 4 ใ‚’3็•ช็›ฎใซ็ฝฎใ‘ใฐใ‚ˆใ„ใ€‚ $3 \notin A$ ใฎใจใใ€้€ฃ็ถšๅˆ—ใ‚’ๅดฉใ™ๅฟ…่ฆใชใ„ใ€‚

ใจใ„ใ†ใ“ใจใฏ $B = [1..N]$ ใ‚’ๅ…ˆ้ ญใ‹ใ‚‰ใฟใฆใ„ใใ€ $i \in A$ ใชใ‚‰ $B_i$ ใจ $B_{i+1}$ ใ‚’ๅ…ฅใ‚Œๆ›ฟใˆใ‚‹ใ€‚ใŸใ ใ— $i = N$ ใชใ‚‰ๅ…ฅใ‚Œๆ›ฟใˆไธ่ƒฝใชใฎใง -1 ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚ใ“ใ†ใ—ใฆใงใใŸ $B$ ใŒ็ญ”ใˆใชใฎใงๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใฎไธ€็•ชไธ‹ใซใ‚ใ‚‹ๆ–นๆณ•ใจๅŒใ˜ใงใ‚ใ‚‹ใ€‚ใ‚ˆใ่ฆ‹ใŸใ‚‰ใ€ $N \in A$ ใฎใจใใ‚‚ๅณๅบงใซ่งฃใชใ—ใจใ—ใฆใ‚ˆใ‹ใฃใŸใ€‚

ARC 178-B

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

ARC ๆฐดdiffใซใฏ็ใ—ใ(?)ใ€้‹ญใ„็™บๆƒณใ‚‚ใ‚จใƒƒใ‚ธใ‚ฑใƒผใ‚นใฎ่€ƒๆ…ฎใ‚‚ๅฟ…่ฆใชใใฆไธๅฏงใชๆ•ฐใˆไธŠใ’ใง่งฃใ‘ใ‚‹ใ€‚

$A_{1} = A_{2}$ ใจ $A_{1} &lt; A_{2}$ ใงๅ ดๅˆๅˆ†ใ‘ใ™ใ‚‹($A_{1} &gt; A_{2}$ ใชใ‚‰ไบ’ใ„ใซๅ…ฅใ‚Œๆ›ฟใˆใ‚‹)ใ€‚ $A_{2} &lt; A_{3}$ ใชใ‚‰ๆกใŒ่ถณใ‚Šใšใ€ $A_{2} + 1 &lt; A_{3}$ ใชใ‚‰ๆกใ‚ใตใ‚Œใง่งฃใชใ—ใงใ‚ใ‚‹ใ€‚

$a = A_{1} = A_{2} = A_{3}$ ใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ไพ‹ใˆใฐ $a = 3$ ใชใ‚‰ใ€ $100+100..999, 101+ 100..998, ..., 899+100$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ไธ€่ˆฌๅŒ–ใ™ใ‚‹ใจใ€ $d = 10^a - 2 \times 10^{a-1}$ ใจใ—ใฆ $\sum_{i=1}^{d} i = d(d + 1) / 2$ ใงใ‚ใ‚‹ใ€‚

$a = A_{1} = A_{2}, A_{3} = a + 1$ ใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ $a$ ๆกใฎๆ•ฐใจ $a$ ๆกใฎๆ•ฐใ‚’่ถณใ—ใฆใ‚‚ $a$ ใพใŸใฏ $a+1$ ๆกใซใ—ใ‹ใชใ‚‰ใชใ„ใฎใงใ€ $A_{1},A_{2}$ ใฎ็ต„ใฟๅˆใ‚ใ›ใฎ็ทๆ•ฐ $(10^a - 10^{a-1})^2$ ใ‹ใ‚‰ไธŠ่จ˜ใฎๅ€คใ‚’ๅผ•ใ‘ใฐใ„ใ‚ˆใ„ใ€‚

$A_{1} &lt; A_{2} = A_{3}$ ใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ไพ‹ใˆใฐ $A_{1} = 1, A_{6} = 5$ ใชใ‚‰ใ€ $1+100000..999998, ... , 9+100000..999990$ ใงใ‚ใ‚‹ใ€‚ใ“ใ‚Œใ‚’ไธ€่ˆฌๅŒ–ใ™ใ‚‹ใจใ€ $lower = 10^{A_{2}} - 10^{A_{2}-1} - 10^{A_{1}} + 1, upper = 10^{A_{2}} - 10^{A_{2}-1} - 10^{A_{1}-1}$ ใจใ—ใฆใ€ $\sum_{i=lower}^{upper} i = (lower+upper)(upper-lower+1)/2$ ใงใ‚ใ‚‹ใ€‚

$A_{1} &lt; A_{2} = A_{3} - 1$ ใฎๅ ดๅˆใ‚’่€ƒใˆใ‚‹ใ€‚ $A_{1}$ ๆกใฎๆ•ฐใจ $A_{2}$ ๆกใฎๆ•ฐใ‚’่ถณใ—ใฆใ‚‚ $A_{2}$ ใพใŸใฏ $A_{2}+1$ ๆกใซใ—ใ‹ใชใ‚‰ใชใ„ใฎใงใ€ $A_{1},A_{2}$ ใฎ็ต„ใฟๅˆใ‚ใ›ใฎ็ทๆ•ฐ $(10^{A_{1}} - 10^{A_{1}-1})(10^{A_{2}} - 10^{A_{2}-1})$ ใ‹ใ‚‰ไธŠ่จ˜ใฎๅ€คใ‚’ๅผ•ใ‘ใฐใ„ใ‚ˆใ„ใ€‚

่ฃœ้›†ๅˆใฎ่€ƒใˆๆ–นใ‚‚ๅซใ‚ใฆใ€ๅ…ฌๅผ่งฃ่ชฌ1ใจใ ใ„ใŸใ„ๅŒใ˜ใงใ‚ใ‚‹ใ€‚ไธŠ่จ˜ใ‚’ $A_{1} \leq A_{2}$ ใจใพใจใ‚ใฆใ‚ˆใ‹ใฃใŸใ€‚

ARC 179-A

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

38ๅˆ†ใจ3ใƒšใƒŠใงใ‚ใ‚‹ใ€‚

็ดฏ็ฉๅ’Œใฎๅ…ˆ้ ญใŒ0ใจใ„ใ†ใฎใŒๅฃใซใชใ‚‹ใ€‚ใพใšๆ˜‡้ †ใซไธฆในใฆใฟใ‚‹ใ€‚ใ“ใฎใจใ็ดฏ็ฉๅ’Œใฏ

  • ๅ…ˆ้ ญใŒ0
  • ใใฎๅพŒ $X$ ใซ่ฒ ใฎๅ€คใŒใ‚ใ‚‹ใชใ‚‰็ดฏ็ฉๅ’ŒใŒ่ฒ ใซใชใ‚‹
  • ใใฎๅพŒ็ดฏ็ฉๅ’Œใฏๆญฃใซใชใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„

ใงใ‚ใ‚‹ใ€‚ $K &gt; 0$ ใฎใจใใ€็ดฏ็ฉๅ’ŒใŒๆญฃใซใชใ‚‹ใชใ‚‰้ฉๅฝ“ใช $K$ ใ‚’้ธใ‚“ใงๆกไปถใ‚’ๆบ€ใŸใ™ใ“ใจใŒใงใใ‚‹ใ€‚ใ‚ˆใฃใฆ $X$ ใฎๆ˜‡้ †ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

$K &lt; 0$ ใฎใจใใฏ็ดฏ็ฉๅ’Œใฎๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ„ใ„ใ€‚ๆ˜‡้ †ใฎ็ดฏ็ฉๅ’Œใฎๆœ€ๅฐๅ€คใ ใจๆ€ใฃใŸใ‚‰WAใ—ใŸใ€‚้™้ †ใฎ็ดฏ็ฉๅ’Œใฎๆœ€ๅฐๅ€คใ‚’ๆฑ‚ใ‚ใ‚Œใฐใ‚ˆใ(็ดฏ็ฉๅ’ŒใŒ่ฒ ใซใชใ‚‰ใชใ•ใใ†ใชใ‚‚ใฎใ‹ใ‚‰้ธใถใฎใง)ใ€ใ“ใ‚Œใฏ $S = \sum X$ ใงใ‚ใ‚‹ใ€‚ใ‚ˆใฃใฆ $K \leq S$ ใชใ‚‰ $X$ ใฎ้™้ †ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ใฉใกใ‚‰ใงใ‚‚ใชใ‘ใ‚Œใฐ่งฃใชใ—ใชใฎใง No ใ‚’ๅ‡บๅŠ›ใ™ใ‚‹ใ€‚

ARC 179-B

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

่งฃๆณ•ใฏใ™ใๆ€ใ„ใคใ„ใŸใŒใ€่ฉฐใ‚ใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใŸใ€‚ $M$ ใŒๅฐใ•ใ„ใฎใง $2^M$ ใฎใƒ“ใƒƒใƒˆๅ…จๆŽข็ดขใ ใ‚ใ†ใจๆ€ใฃใŸใ€‚ๅฎŸ้š›ใใฎ้€šใ‚Šใงใ‚ใ‚‹ใ€‚

ไปฅไธ‹ $1..M$ ใฎๆ•ดๆ•ฐใ‚’ใ€0-based indexingใง่€ƒใˆใฆ $0..(M-1)$ ใจใ™ใ‚‹ใ€‚ $X$ ใฎ่ชญใฟๆ–นใ‚’้€†ใซใ™ใ‚‹ใ€‚ใคใพใ‚Š $B$ ใฎ้–“ใซ $X_B$ ใŒๅญ˜ๅœจใ™ใ‚‹ใฎใงใฏใชใใ€ $A$ ใซ $B$ ใ‚’็ฝฎใ„ใŸใ‚‰ $B$ ใ‚’็ฝฎใ‘ใชใใชใ‚Šใ€ $X_B$ ใ‚’็ฝฎใ„ใŸใ‚‰ $B$ ใ‚’็ฝฎใ‘ใ‚‹ใจ่€ƒใˆใ‚‹ใ€‚ใ‚ใ‚‹ $B$ ใซใคใ„ใฆ $B = X_i$ ใจใชใ‚‹ $X_i$ ใฎๆทปใˆๅญ— $i$ ใฎ้›†ๅˆใ‚’ $S_B$ ใจ็ฝฎใใ€‚ใ“ใฎๆทปใˆๅญ—ใ‚‚0-based indexingใซใ™ใ‚‹ใ€‚

$DP[i=0..N][s=0..(2^M-1)]$ ใฏใ€ $A$ ใ‚’้•ทใ• $i$ ใพใงๆฑบใ‚ใŸใจใใซใ€ $j=0..(M-1)$ ใ‚’็ฝฎใ‘ใ‚‹ใ‹ใฉใ†ใ‹ใฎ็Šถๆ…‹ $s$ ใซใชใ‚‹ $A$ ใฎไธฆในๆ–นใŒไฝ•้€šใ‚Šใ‚ใ‚‹ใ‹ใ€ใจใ„ใ†ๅฎš็พฉใ™ใ‚‹ใ€‚ $s$ ใฎใƒ“ใƒƒใƒˆ $j$ ใŒ0ใชใ‚‰ $j$ ใ‚’็ฝฎใใ“ใจใŒใงใใ€ใƒ“ใƒƒใƒˆ $j$ ใŒ1ใชใ‚‰ $j$ ใ‚’็ฝฎใใ“ใจใŒใงใใชใ„ใ€‚ไพฟๅฎœไธŠ $DP[0][0] = 1$ ใจใ—ใฆ $A_1$ ใฏไฝ•ใงใ‚‚็ฝฎใ‘ใ‚‹ใ‚ˆใ†ใซใ‚ใ‚‹ใ€‚

DPใฎ็Šถๆ…‹้ท็งปใ‚’ๅฎšใ‚ใ‚‹ใ€‚ $DP[i][s]$ ใฎใƒ“ใƒƒใƒˆ $j$ ใŒ1ใชใ‚‰ $A_{i+1}$ ใซ $j$ ใ‚’็ฝฎใใ“ใจใฏใงใใชใ„ใ€‚ $DP[i+i][s]$ ใฎใƒ“ใƒƒใƒˆ $j$ ใŒ0ใชใ‚‰ $A_{i+1}$ ใซ $j$ ใ‚’็ฝฎใ‘ใ‚‹ใ€‚้ท็งปๅ…ˆใฎ็Šถๆ…‹ $u$ ใฏใ€็Šถๆ…‹ $s$ ใฎใƒ“ใƒƒใƒˆ $j$ ใ‚’1ใซใ—ใฆ(็ฝฎใ‘ใชใ„ใฎใง)ใ€ $\forall k \in S_j$ ใฎใƒ“ใƒƒใƒˆ $k$ ใ‚’0ใซใ—ใŸ(็ฝฎใ‘ใ‚‹ใ‚ˆใ†ใซใชใ‚‹ใฎใง)ใ‚‚ใฎใงใ‚ใ‚‹ใ€‚ใ“ใ†ใ—ใฆ $DP[i+1][u]$ ใซ $DP[i][s]$ ใ‚’่ถณใ™ใ€‚

$X_i$ ใฏใพใŸ็ฝฎใ‘ใ‚‹ใ‚ˆใ†ใซใชใ‚‹ๆ•ฐๅญ—ใ‚’็คบใ—ใฆใ„ใ‚‹ใจใ„ใ†่€ƒใˆๆ–นใ‚‚ๅซใ‚ใฆใ€ๅ…ฌๅผ่งฃ่ชฌใจใ ใ„ใŸใ„ๅŒใ˜ใงใ‚ใ‚‹ใ€‚

ARC 179-C

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

่งฃๆณ•ใฏๆ—ฉใ‚ใซๆ€ใ„ใคใ„ใŸใŒใ€ๆ˜‡้ †ใฎ $A_1, ... , A_N$ ใซๆŒฟๅ…ฅใ™ใ‚‹้š›ใซใ€ๅ…ˆ้ ญใฎๅ‰ใจๆœซๅฐพใฎๅพŒใซๆŒฟๅ…ฅใ™ใ‚‹ใจใใฎใƒใ‚ฐใŒใชใ‹ใชใ‹ๅ–ใ‚Œใชใ‹ใฃใŸใ€‚

$2..1000$ ใ‚’ไบŒๅˆ†ๆŽข็ดขใ™ใ‚‹ๅ›žๆ•ฐใฏไปฅไธ‹ใฎ้€šใ‚Š8977ๅ›žใชใฎใงใ€2ๅ€ใ—ใฆ $N$ ่ถณใ—ใฆใ‚‚25000ๅ›žๅˆถ้™ใฏ่ถ…ใˆใชใ„ใ€‚ใ‚ˆใฃใฆ $A_{1..(2N-1)}$ ใฎไฝ็ฝฎใ‚’ไบŒๅˆ†ๆŽข็ดขใ™ใ‚‹ใ€‚

sum(purrr::map_dbl(2:1000, ~ ceiling(log2(.x))))
# 8977

$A_{1..N}$ ใฎ้ †็•ชใ‚’็ขบๅฎšใ•ใ›ใ‚‹ใ€‚ $A_{P_1} \leq A_{P_2} \leq ... \leq A_{P_N}$ ใจใชใ‚‹ใ‚ˆใ†ใช $P_{1..N}$ ใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚ใ“ใ‚Œใฏไปฅไธ‹ใฎ็นฐใ‚Š่ฟ”ใ—ใงๆฑ‚ใพใ‚‹ใ€‚ $P$ ใฎไฟๆŒใซ std::vector ใ‚’็”จใ„ใŸใจใ—ใฆใ‚‚ใ€ $\sum_{i=2}^{N} i = 500499$ ใชใฎใงใ€ std::vector ใซๆทปใˆๅญ—ใง insert/erase ใ—ใฆ่ฆ็ด ๆ•ฐใซๆฏ”ไพ‹ใ™ใ‚‹่จˆ็ฎ—ๆ™‚้–“ใŒๆŽ›ใ‹ใฃใฆใ‚‚TLEใ—ใชใ„(96 ms)ใ€‚

  • $A_1 &lt; A_2$ ใ‹ใฉใ†ใ‹ๆฏ”่ผƒใ™ใ‚‹ใ€‚
  • $i &gt; 2$ ใซใคใ„ใฆใ€ $A_{P_j} \leq A_i \leq A_{P_{j+1}}$ ใ‚’ๆบ€ใŸใ™ใ‚ˆใ†ใช $j$ ใ‚’ไบŒๅˆ†ๆŽข็ดขใงๆฑ‚ใ‚ใ‚‹ใ€‚ $A_i \leq A_{P_{1}}$ ใพใŸใฏ $A_{P_{N}} &lt; A_i$ ใฎๅ ดๅˆใ‚‚่€ƒๆ…ฎใ™ใ‚‹ใ€‚ใ“ใฎๅฎŸ่ฃ…ใซๆ™‚้–“ใŒๆŽ›ใ‹ใฃใฆใ—ใพใฃใŸใ€‚

$i &gt; N$ ใซใคใ„ใฆใ€ ใ‚ใ‚‹ๆ™‚็‚นใฎ $A$ ใ‚’ๆ˜‡้ †ใซไธฆในใŸๆ™‚ใซใ€ๆœ€ๅฐ่ฆ็ด  $b=A_{P_1}$ ใจๆœ€ๅคง่ฆ็ด  $c=A_{P_{|A|}}$ ใ‚’่ถณใ—ใฆ $A_{P_i} = b+c$ ใซใ™ใ‚‹ใ€‚ใ“ใ‚Œใฏ $R$ ใŒใฉใ‚“ใชๅ€คใงใ‚ใฃใฆใ‚‚้กŒๆ„ใฎๅˆถ็ด„ใ‚’ๆบ€ใŸใ™ใ€‚

  • $-R \leq b \leq 0 \leq c \leq R$ ใชใ‚‰ $-R \leq b+c \leq R$ ใงใ‚ใ‚‹
  • $0 \leq b \leq c \leq R$ ใชใ‚‰ $\sum_{i=1}^N A_i \leq R$ ใ‚ˆใ‚Šใ€ $0 \leq b+c \leq R$ ใงใ‚ใ‚‹
  • $-R \leq b \leq c \leq 0$ ใชใ‚‰ๅŒๆง˜ใซ $-R \leq b+c \leq 0$ ใงใ‚ใ‚‹

ใคใพใ‚Š $i &gt; N$ ็•ช็›ฎใฎ่ฆ็ด  $A_{P_i} = A_{P_1} + A_{P_{|A|}}$ ใ‚’ไฝœใ‚Šใ€ $A_{P_1}, A_{P_{|A|}}$ ใ‚’้™คใ„ใฆใ‹ใ‚‰ใ€ไธŠ่จ˜ใฎ่ฆ้ ˜ใง $A_{P_i}$ ใ‚’ๆŒฟๅ…ฅใ™ใ‚‹ใ€‚ใ“ใ‚Œใ‚‰ใ‚’ใ‚ฏใ‚จใƒชใจใ—ใฆๅ…ฅๅ‡บๅŠ›ใ™ใ‚‹ใจ็ญ”ใˆใซใชใ‚‹ใ€‚

ๆƒณๅฎš่งฃๆณ•ใฏใƒžใƒผใ‚ธใ‚ฝใƒผใƒˆใ ใฃใŸใ€‚ std::vector ใซๆทปใˆๅญ—ใง insert/erase ใ™ใ‚‹ใจ่ฆ็ด ๆ•ฐใซๆฏ”ไพ‹ใ™ใ‚‹่จˆ็ฎ—ๆ™‚้–“ใŒๆŽ›ใ‹ใ‚‹ใ“ใจใ‚’ๆ‰ฟ็Ÿฅใงใ€C++ใฎๅŠ›ใงใ”ใ‚ŠๆŠผใ—ใŸๆ„ŸใŒใ‚ใ‚‹ใ€‚

ARC 180-A

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

Bๅ•้กŒไปฅ้™ใŒ้›ฃใ—ใ™ใŽใฆใ€ใ“ใ‚ŒใŒratedใชใ‚‰1ๅฎŒใงใ‚‚ใƒฌใƒผใƒ†ใ‚ฃใƒณใ‚ฐใŒไธŠใŒใฃใŸๅฏ่ƒฝๆ€งใŒใ‚ใ‚‹ใ€‚

ABA ใŒ A ใ€ BAB ใŒ B ใ€ใจใ„ใ†ใ“ใจใฏใ€ๆ–‡ๅญ—ๅˆ—ใซ A ใจ B ใฎๅ…ฅใ‚Œๆ›ฟใ‚ใ‚ŠใŒ2ใค้€ฃ็ถšใ™ใ‚Œใฐใพใจใ‚ใฆๅ‰Š้™คใงใใ‚‹ใ€‚ใ‚ˆใฃใฆ้€ฃ็ถšใ™ใ‚‹ๆ–‡ๅญ—ใฎๅ…ฅใ‚Œๆ›ฟใ‚ใ‚ŠใŒ $L$ ๅ›žใ‚ใฃใŸใจใ—ใฆ $\lfloor L/2 \rfloor$ ๅ›žๅ‰Š้™คใงใใ‚‹ใฎใงใ€ $1 + \lfloor L/2 \rfloor$ ้€šใ‚Šใฎๆ–‡ๅญ—ๅˆ—ใ‚’ไฝœใ‚Œใ‚‹ใ€‚็•ฐใชใ‚‹้€ฃ็ถš้ƒจๅˆ†ใฏ็‹ฌ็ซ‹ใชใฎใงใ€ใใ‚Œใ‚‰ใฎ็ฉ(้€ฃ็ถš้ƒจๅˆ†ใŒใชใ‘ใ‚Œใฐ1)ใŒ็ญ”ใˆใงใ‚ใ‚‹ใ€‚

ๅ…ฌๅผ่งฃ่ชฌใ‚‚ๆ–น้‡ใฏๅŒใ˜ใ ใŒใ€ไฝฟใฃใฆใ„ใ‚‹ใƒ†ใ‚ฏใƒ‹ใƒƒใ‚ฏใฏ้ฉšใใงใ‚ใ‚‹ใ€‚

ARC 180-B

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

ๅ…จใ่ฆ‹ๅฝ“ใŒใคใ‹ใชใ‹ใฃใŸใ€‚

$i=1..N$ ใ‚’ๅฎšไฝ็ฝฎใซ็ฝฎใใฎใŒๆœ€้ฉ่งฃใ ใจๆ€ใฃใŸใŒใ€ไธŠๆ‰‹ใ่จผๆ˜ŽใŒๆ€ใ„ใคใ‹ใชใ‹ใฃใŸใ€‚ๅ…ฌๅผ่งฃ่ชฌ1ใฏ $i=1..N$ ใฎ้ †ใซๅฎšไฝ็ฝฎใซ ็ฝฎใ ใ€ๅ…ฌๅผ่งฃ่ชฌ2ใฏ $i=N..1$ ใฎ้ †ใซๅฎšไฝ็ฝฎใซ ็ฝฎใ ใ€‚

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