Reading

CodeForces VP ่ฎฐๅฝ•


Fanyi Pu

ๆ„Ÿ่ง‰ tf ็š„ๆ—ถๅ€™่ฟ˜ๆ˜ฏๆ‰“ๅ‡ ๅœบ VP ๅฅฝโ€ฆโ€ฆ

ๅŠ *ๅท็š„ๆ˜ฏๅฝ“ๅœบ่ฟ‡ๆމ็š„๏ผŒ่ฟ™ๆ ทไปฅๅŽๅคไน ๅฏไปฅ็”จใ€‚

Codeforces Round #472 (rated, Div. 1, based on VK Cup 2018 Round 2)

*A. Mystical Mosaic

้ข˜ๆ„ๅฅฝ้šพ็ฟป่ฏ‘ๅ•Š๏ผŒ้‚ฃๅฐฑไธ็ฟป่ฏ‘ไบ†ๅงใ€‚

ๅๆญฃ็›ดๆŽฅๆจกๆ‹Ÿๅฐฑๅฏไปฅไบ†ใ€‚

ไปฃ็ ๏ผš58555087

*B. Three-level Laser

้ข˜็›ฎๅคงๆ„ๆ˜ฏ็ป™ไฝ ไธ€ไธช้•ฟๅบฆไธบ n(nโ‰ค105) ็š„ไธฅๆ ผ้€’ๅขž็š„ๆญฃๆ•ดๆ•ฐๅบๅˆ— {E}๏ผŒ่ฎฉไฝ ๆฑ‚ i<j<k ไฝฟๅพ— Ekโˆ’Eiโ‰คU ไธ” ฮท=Ekโˆ’EjEkโˆ’Ei ๆœ€ๅคงใ€‚

่€ƒ่™‘ๅˆฐไธฅๆ ผ้€’ๅขžๅบ”่ฏฅๆ˜ฏๅ•่ฐƒๆ€ง้—ฎ้ข˜ใ€‚

ๆ˜พ็„ถๅฆ‚ๆžœ i ๅ’Œ k ๅ›บๅฎš๏ผŒ้‚ฃไนˆ ฮท ไธŽ Ej ่ดŸ็›ธๅ…ณ๏ผŒไบŽๆ˜ฏ i=jโˆ’1ใ€‚

็„ถๅŽ่€ƒ่™‘ๆžšไธพ i ็ฎ— k๏ผŒ็›ดๆŽฅๆŠŠไธŠ้ข็š„ Ek ๅŽปๆމๅณๅฏ๏ผšฮท=Ekโˆ’EjEkโˆ’Ei=Ekโˆ’Ei+Eiโˆ’EjEkโˆ’Ei=1+Eiโˆ’EjEkโˆ’Ei

ไบŒๅˆ†ไธ€ไธ‹ๅฐฑๅฅฝไบ†ใ€‚

ไปฃ็ ๏ผš58555515

*C. Riverside Curio

้ข˜ๆ„ๅคงๆฆ‚ๅฐฑๆ˜ฏๆœ‰ไธ€ไธชไบบๆฏๅคฉๅŽป็œ‹ไธ€ๆกๆฒณ็š„ๆฐดไฝ๏ผŒๆฏๆฌกๅœจๆฐดไฝไธŠ็”ปไธ€ๆก็บฟ๏ผŒๅนถ่ฎฐๅฝ•ไธ‹ไธฅๆ ผ้ซ˜ไบŽๅฝ“ๅ‰ๆฐดไฝ็š„็บฟๆœ‰ๅ‡ ๆก๏ผŒ่ฎฐไธบ miใ€‚ไปค็ฌฌ i ๅคฉไธฅๆ ผไฝŽไบŽๅฝ“ๅ‰ๆฐดไฝ็š„็บฟๆœ‰ di ๆก๏ผŒๆฑ‚ โˆ‘di ็š„ๆœ€ๅฐๅ€ผ๏ผŒnโ‰ค105ใ€‚

ๆ˜พ็„ถๆœ€ๅฐ‘ๆœ‰ max{mi} ๆก็บฟ๏ผŒ็„ถๅŽๆˆ‘ไปฌๆ‰พๅˆฐ่ฟ™ไธชไฝ็ฝฎ๏ผŒ็„ถๅŽๅพ€ไธค่พน่ท‘ใ€‚ๅพ€ๅŽ่ท‘ๅฐฑ็›ดๆŽฅๆจกๆ‹Ÿๅณๅฏ๏ผŒๅ› ไธบไน‹ๅŽๆ˜ฏไธไผš็”ปๆ–ฐ็š„็บฟไบ†ใ€‚ๅพ€ๅ‰่ท‘็›ธๅฝ“ไบŽๆ˜ฏๅˆ ็บฟ๏ผŒๆ˜พ็„ถๆ˜ฏ่ƒฝๅˆ ๅฐฑๅˆ ๏ผŒ็ปดๆŠคไธ€ไธ‹ๅ‰็ผ€ max ๅณๅฏใ€‚

ไปฃ็ ๏ผš58556096

D. Contact ATC

้ข˜ๆ„ๆ˜ฏ่ฏดๆœ‰ n(nโ‰ค105) ๆžถ้ฃžๆœบๅœจไธ€ๆกๆ•ฐ่ฝดไธŠ้ฃž๏ผŒๅๆ ‡ไธบ xi๏ผŒ้€Ÿๅบฆไธบ vi๏ผŒๆœ‰ xivi<0๏ผˆๅพ€ๅŽŸ็‚น้ฃž๏ผ‰๏ผŒ็Žฐๅœจๅฏ่ƒฝๆœ‰ไธ€้€Ÿๅบฆไธบ v ็š„้ฃŽ๏ผŒๅช่ƒฝ้ข„ๆต‹ๅ‡บ vโˆˆ[โˆ’w,w]๏ผŒๅฝ“็„ถไฟ่ฏ |vi|<wใ€‚ๆฑ‚ๆœ‰ๅคšๅฐ‘ๅฏน้ฃžๆœบๅฏ่ƒฝๅŒๆ—ถๅˆฐ่พพๅŽŸ็‚นใ€‚

ๆ„Ÿ่ง‰่‡ชๅทฑๅฅฝ่œๅ•Š๏ผŒๆŽจๅผๅญๅ‘็Žฐๆ˜ฏ่ทŸๆ–œ็އ็›ธๅ…ณ็š„ไธ€ไธชไธœ่ฅฟ๏ผŒ็„ถๅŽๆƒŠๅ–œๅœฐๅ‘็Žฐ่ฟ™ๅฅฝๅƒๆ˜ฏ้“่ฎก็ฎ—ๅ‡ ไฝ•๏ผŒ็„ถๅŽ็ ไบ†ไธ€ๅนดโ€ฆโ€ฆ

ๆˆ‘ไปฌ่€ƒ่™‘่ฎก็ฎ—ๅ‡บ้ฃžๆœบๅˆฐ่พพๅŽŸ็‚น็š„ๆ—ถ้—ด tiโˆˆ[li,ri]๏ผŒ่€ƒ่™‘ๅˆฐ้ฃŽ้€ŸไธŽๆ—ถ้—ดๆ˜ฏๅ‘ˆไธ€ไธชไธ€ๆฌกๅ‡ฝๆ•ฐ็š„ๅ…ณ็ณป๏ผŒ็”ปๅ›พไพฟๅฏ็Ÿฅ้“ๅฆ‚ๆžœๆ˜ฏ็›ธๅ‘้ฃž่กŒ็š„้ฃžๆœบ i,j๏ผŒๅช่ฆ [li,ri]โˆฉ[lj,rj]โ‰ โˆ… ๅณๅฏ๏ผŒๅฆ‚ๆžœๆ˜ฏๅŒๅ‘็š„้ฃžๆœบ i,j๏ผŒๅช่ฆ [li,ri]โІ[lj,rj] ๆˆ– [li,ri]โЇ[lj,rj] ๅณๅฏใ€‚

็„ถๅŽๅฐฑๅ˜ๆˆไบ†ไธ€ไธชไบŒ็ปดๆ•ฐ็‚น้—ฎ้ข˜ใ€‚

ไปฃ็ ๏ผš58560521

E. Wardrobe

้ข˜่งฃๅ†™ๅœจไบ†ๅฆไธ€็ฏ‡ๆ–‡็ซ ้‡Œใ€‚

F. Minimal Subset Difference

ๅคช่œไบ†๏ผŒไธไผšใ€‚

Codeforces Round #539 (Div. 1)

*A. Sasha and a Bit of Relax

้ข˜ๆ„ๅคงๆฆ‚ๅฐฑๆ˜ฏ็ป™ไฝ ไธ€ๆฎต้•ฟๅบฆไธบ n(nโ‰ค3ร—105) ๅบๅˆ— {a}(0โ‰คai<220)๏ผŒๆฑ‚ๆœ‰ๅคšๅฐ‘ไธชๅŒบ้—ด [l,r] ไฝฟๅพ— rโˆ’l+1 ๆ˜ฏๅถๆ•ฐไธ” โจi=lmai=โจi=m+1rai๏ผŒๅ…ถไธญ m=l+rโˆ’12๏ผŒโจ ๆ˜ฏๆŒ‡ xorใ€‚

ๆ˜พ็„ถๅช่ฆ โจi=lrai=0 ๅณๅฏ๏ผŒ็„ถๅŽๅผ€ไธชๆกถ็ฎ—ใ€‚

ไปฃ็ ๏ผš58788064

*B. Sasha and One More Name

้ข˜ๆ„ๆ˜ฏ็ป™ไฝ ไธ€ไธชๅ›žๆ–‡ไธฒ s(1โ‰ค|s|โ‰ค5000)๏ผŒๆฑ‚ๆœ€ๅฐๅ‰ฒๅคšๅฐ‘ๅˆ€็„ถๅŽ้‡็ป„ๅ˜ๆˆไธ€ไธชไธๅŒ็š„ๅ›žๆ–‡ไธฒ๏ผŒๆ— ่งฃ่พ“ๅ‡บ Impossibleใ€‚

ๆ˜พ็„ถ็ญ”ๆกˆๅชๆœ‰ 1ใ€2ใ€Impossible ไธ‰็ง๏ผŒImpossible ็›ดๆŽฅๅˆค๏ผŒ1 ็›ดๆŽฅๆšดๅŠ›ๆžšไธพ๏ผŒๅ‰ฉไธ‹ๆฅ็š„้ƒฝๆ˜ฏ 2ใ€‚

ไปฃ็ ๏ผš58788424

C. Sasha and One More Name

ๆ•ฐๆฎ็ป“ๆž„้ข˜๏ผŒ็›ดๆŽฅๆŠ„ไบ†่ฟ™็ฏ‡ๅšๅฎข็š„็ฟป่ฏ‘๏ผš

็ปดๆŠคไปฅไธ‹ไธ‰็งๆ“ไฝœ

  1. 1 t s๏ผšๅœจๆ—ถๅˆป t ๆ’ๅ…ฅๅ‘ฝไปค sใ€‚ไฟ่ฏไปปๆ„ๆ“ไฝœๅŽ๏ผŒไปปๆ„ๆ—ถๅˆป่‡ณๅคšๅชๆœ‰ไธ€ไธชๅ‘ฝไปคใ€‚
  2. 2 t๏ผšๅˆ ้™คๆ—ถๅˆป t ็š„ๅ‘ฝไปคใ€‚
  3. 3 l r v๏ผšๆฑ‚ๆœ€ๅฐ็š„ tโˆˆ[l,r]๏ผŒไฝฟๅพ— f(t)=0ใ€‚

ๅ…ถไธญ

f(t)=v+โˆซltg(x)dx

ๅ…ถไธญ่ฎพๅœจ [l,r] ๆ—ถ้—ดๅ†…็š„ๅ‘ฝไปคไพๆฌกไธบ (t1,s1),โ€ฆ,(tm,sm)๏ผŒๅˆ™๏ผš

g(t)={0lโ‰คt<t1s1t1โ‰คt<t2โ€ฆsktkโ‰คt<tk+1โ€ฆsmtโ‰ฅtm.

่‹ฅไธๅญ˜ๅœจ๏ผŒๅˆ™่ฟ”ๅ›ž โˆ’1ใ€‚

้ข˜่งฃ็•™ๅ‘ๅงโ€ฆโ€ฆ

Codeforces Round #578 (Div. 2)

ๆ‰“ไบ†ๅœบ Div. 2 ๆ„Ÿ่ง‰่‡ชๅทฑๅฟƒๆƒ…่ˆ’็•…๏ผŒ็„ถ้น…่ฟ˜ๆ˜ฏ่‡ช้—ญไบ†โ€ฆโ€ฆ

่ฏ่ฏดๆˆ‘็š„ hash ๅฅฝ่œๅ•Š๏ผŒไธบไป€ไนˆไธ€ๅฎš่ฆๆ‰“ๅŒๅ“ˆๅธŒๅ•Šโ€ฆโ€ฆ

่‡ช้—ญไบ†๏ผš

*A. Hotelier

็›ดๆŽฅๆจกๆ‹Ÿๅฐฑๅฏไปฅไบ†ใ€‚

ไปฃ็ ๏ผš58884080

*B. Block Adventure

่ฟ˜ๆ˜ฏ็›ดๆŽฅๆจกๆ‹Ÿๅฐฑๅฏไปฅไบ†ใ€‚

ไปฃ็ ๏ผš58884001

*C. Round Corridor

ๅคงๆฆ‚ๅฐฑๆ˜ฏๆœ‰็ฑปไผผ่ฟ™ๆ ท็š„ไธ€ไธชๅœ†ๅฝขๅฑ‹ๅญ๏ผŒๅ†…ๅฑ‚ๆœ‰ n ๆ ผ๏ผŒๅค–ๅฑ‚ๆœ‰ m ๆ ผ๏ผŒๆฏๅฑ‚้ƒฝๆœ‰ไธ€้ขๅข™ๅœจ 12 ๆ—ถ็š„ไฝ็ฝฎ๏ผŒๆฏๆ ผๅคงๅฐๅ‡ๅŒ€ใ€‚ๅ†…ๅค–ๅฑ‚ๆฒกๆœ‰ๅข™๏ผŒไฝ†ๆฏๅฑ‚ๆ ผๅญไธŽๆ ผๅญไน‹้—ดๆœ‰ๅข™ใ€‚ๅคšๆฌก่ฏข้—ฎ (sx,sy) ๅ’Œ (ex,ey) ่ฏข้—ฎ็€ไธคไธชๆ ผๅญ่ƒฝๅฆ็›ธไบ’ๅˆฐ่พพใ€‚

n,mโ‰ค1018,qโ‰ค104ใ€‚

ๆ˜พ็„ถๅฏไปฅๆŠŠ่ฟ™ไธช็Žฏๅฝขๅˆ†ๆˆไธ€ๆฎตไธ€ๆฎต๏ผŒๆฏๆฎต้ƒฝ็›ธ่ฟžไธ”็‹ฌ็ซ‹๏ผˆไธŽๅ…ถไป–ๆ ผๅญไธ่ฟž้€š๏ผ‰ใ€‚

ๅ‡่ฎพไธ€ๆฎตๆœ‰ x ไธชๅ†…ๅฑ‚ๆ ผๅญไธŽ y ไธชๅค–ๅฑ‚ๆ ผๅญ๏ผŒ้‚ฃๆ˜พ็„ถๆœ‰ nx=my๏ผŒๅณ ny=mx๏ผŒๆˆ‘ไปฌ้œ€่ฆๆ‰พๅˆฐๆœ€ๅฐ็š„ x,y๏ผŒไนŸๅฐฑๆ˜ฏ ny=mx=lcm(n,m)=nmgcd(n,m)๏ผŒไนŸๅฐฑๆ˜ฏ x=ngcd(n,m),y=mgcd(n,m)๏ผŒ็„ถๅŽๆฏๆฌก O(1) ๅˆคๆ–ญไธคไธช็‚นๆ˜ฏๅฆๅœจๅŒไธ€่”้€šๅ—ไธญๅณๅฏใ€‚

ไปฃ็ ๏ผš58883764

*D. White Lines

้ข˜ๆ„ๆ˜ฏๆœ‰ไธ€ๅ— nร—n ็š„็”ปๅธƒ๏ผŒๆœ‰ไธ€ไบ›ๅƒ็ด ็‚นๆ˜ฏ W๏ผŒๆœ‰ไธ€ไบ›ๆ˜ฏ B๏ผŒไฝ ๅฏไปฅๅฐ†ไธ€ไธช kร—k ็š„ๅญ็Ÿฉ้˜ตไธญๆ‰€ๆœ‰็š„ B ๅ…จ้ƒจๅ˜ๆˆ W๏ผŒ้—ฎๅšๅคš่ƒฝๆœ‰ๅคšๅฐ‘่กŒๅˆ—ๆ˜ฏๅ…จ็™ฝ่‰ฒ็š„๏ผŒnโ‰ค2000ใ€‚

ๆˆ‘ไปฌ่€ƒ่™‘่กŒๅ’Œๅˆ—ๅˆ†ๅผ€ๆฅ็œ‹๏ผŒๆˆ‘ไปฌไปค fi,j ่กจ็คบๅทฆไธŠ่ง’ๅœจ็ฌฌ i ่กŒ็ฌฌ j ๅˆ—๏ผŒไผšๆŠŠๅคšๅฐ‘ๅŽŸๆฅไธๆ˜ฏๅ…จ็™ฝ็š„่กŒๅ˜ๆˆๅ…จ็™ฝ็š„่กŒ๏ผŒๅŒ็†ๅฏไปฅๅฎšไน‰ gi,j ่กจ็คบไผšๆŠŠๅคšๅฐ‘ๅŽŸๆฅไธๆ˜ฏๅ…จ็™ฝ็š„ๅˆ—ๅ˜ๆˆๅ…จ็™ฝ็š„ๅˆ—ใ€‚ๅฝ“็„ถ๏ผŒไธบไบ†ๅคๅˆถ็ฒ˜่ดดๆ–นไพฟ๏ผŒไปฃ็ ไธญๆŠŠ gi,j ๅฎšไน‰ไธบไบ†ๅทฆไธŠ่ง’ๅœจ็ฌฌ j ่กŒ็ฌฌ i ๅˆ—ใ€‚

็”ฑไบŽ่ฝฌ็งปๆ˜ฏๅฏน็งฐ๏ผˆ่กŒๅ’Œๅˆ—็š„ๆ–น็จ‹ไธ€ๆ ท๏ผ‰็š„๏ผŒๆ‰€ไปฅๆˆ‘ไปฌๅฐฑไป…่€ƒ่™‘่กŒใ€‚ๆˆ‘ไปฌ่€ƒ่™‘่ฆๆŠŠไธ€่กŒๅ˜ๆˆๅ…จ็™ฝ๏ผŒๅฟ…้กปๆŠŠ่ฏฅ่กŒไธŠๆœ€ๅทฆ่พน็š„้ป‘่‰ฒๆ ผๅญๅ’Œๆœ€ๅณ่พน็š„้ป‘่‰ฒๆ ผๅญๅ…จ้ƒจ่ฆ†็›–ๅˆฐ๏ผŒๆ‰€ไปฅๅฏนไบŽๆฏ่กŒๆˆ‘ไปฌๅฏไปฅ O(1) ่ฎก็ฎ—ใ€‚

ๆˆ‘ไปฌ่€ƒ่™‘ๅ…ˆ O(nk) ๆšดๅŠ›็ฎ—ๅ‡บ f1,j๏ผŒ็„ถๅŽๆฏๆฌก่ฎก็ฎ— fi,j ่€ƒ่™‘ๅขžๅŠ ็ฌฌ i+kโˆ’1 ่กŒ็š„่ดก็Œฎๅนถๅˆ ้™ค็ฌฌ iโˆ’1 ่กŒ็š„่ดก็Œฎๅณๅฏใ€‚

่ฟ™ๆ ทๅคๆ‚ๅบฆๅฐฑๆ˜ฏ O(n2) ็š„ไบ†ใ€‚

ไปฃ็ ๏ผš58884654

E.Compress Words

้ข˜็›ฎๅคงๆ„ๆ˜ฏๆœ‰ n ไธชๅญ—็ฌฆไธฒ si๏ผŒไปŽๅทฆๅพ€ๅณไพๆฌกๅˆๅนถๆฏไธ€ไธชๅญ—็ฌฆไธฒ๏ผŒๅฐฑๆ˜ฏๆ‰พๅˆฐไน‹ๅ‰ๅˆๅนถๅฎŒ็š„ไธฒ็š„ๆœ€้•ฟๅŽ็ผ€ไฝฟๅ…ถๆ˜ฏ่ฆๅˆๅนถ็š„้‚ฃไธชไธฒ็š„ๅ‰็ผ€๏ผŒ่พ“ๅ‡บๆœ€็ปˆๅˆๅนถๅฎŒ็š„ไธฒ๏ผŒnโ‰ค105,โˆ‘|si|โ‰ค106ใ€‚

็›ดๆŽฅๅ“ˆๅธŒๅฐฑๅฏไปฅไบ†๏ผŒๅคๆ‚ๅบฆ O(n)โ€ฆโ€ฆ

ๅคงๆฆ‚้œ€่ฆๅŒๅ“ˆๅธŒ๏ผŒๆˆ‘็š„ๅ•ๅ“ˆๅธŒ wa on 66ใ€‚

ไปฃ็ ๏ผš58886006

Codeforces Round #589 (Div. 2)

ๅˆๆ˜ฏไธ€ๅœบๆ„‰ๅฟซ็š„ Div. 2ใ€‚

ๅฏๆƒœ็ช่ฟ˜ๆ˜ฏ็ˆ†่›‹ไบ†โ€ฆโ€ฆ

*A. Distinct Digits

็›ดๆŽฅๆจกๆ‹Ÿๅณๅฏโ€ฆโ€ฆ

ไปฃ็ ๏ผš61680483

*B. Filling the Grid

็›ดๆŽฅๆจกๆ‹Ÿๅณๅฏโ€ฆโ€ฆ

ไปฃ็ ๏ผš61680658

*C. Primes and Multiplication

้ข˜็›ฎๅคงๆ„ๆœ‰็‚นๅคๆ‚๏ผŒ็„ถๅŽๆˆ‘ๅฐฑ็œ‹้”™ไบ†ไธ€ๅนด็š„้ข˜โ€ฆโ€ฆ

ๅฎšไน‰ prime(x) ่กจ็คบ x ็š„่ดจๅ› ๅญ้›†ๅˆ๏ผŒg(x,p) ่กจ็คบๆœ€ๅคง็š„ pkโˆฃx(kโˆˆN)๏ผŒf(x,y)=โˆkโˆˆprime(x)g(y,k)๏ผŒๆฑ‚ โˆi=1nf(x,i)ใ€‚๏ผˆxโ‰ค109,nโ‰ค1018๏ผ‰

่€ƒ่™‘ๅˆฐๅ…จๆ˜ฏไน˜ๆณ•๏ผŒๆ˜พ็„ถๆปก่ถณไบคๆขๅพ‹ใ€‚

ๆ‰€ไปฅๆˆ‘ไปฌๅฏนๆฏไธช่ดจๅ› ๅญๅˆ†ๅผ€ๆฅๆฑ‚๏ผŒๆœ€ๅŽไน˜่ตทๆฅๅณๅฏใ€‚

ๆˆ‘ไปฌ่€ƒ่™‘่ดจๅ› ๅญ k๏ผŒๆ˜พ็„ถ 1โˆผkโˆ’1 ็š„ๅŒบ้—ด่ดก็Œฎๆ˜ฏ 1๏ผŒkโˆผk2โˆ’1 ็š„่ดก็Œฎๆ˜ฏ k๏ผŒk2โˆผk3โˆ’1 ็š„่ดก็Œฎๆ˜ฏ k2โ€ฆโ€ฆ

็„ถๅŽไธ้šพๅ‘็Žฐๅชๆœ‰ log ไธช่ฟ™ๆ ท็š„ๅŒบ้—ด๏ผŒๆ‰€ไปฅๆ€ปๅคๆ‚ๅบฆ O(x+logโกxlogโกn)ใ€‚

ไปฃ็ ๏ผš61681335

*D. Complete Tripartite

ๆœ‰ n(3โ‰คnโ‰ค105) ไธช็‚น m(0โ‰คmโ‰คmin(3โ‹…105,n(nโˆ’1)2)) ๆก่พน็š„ๆ— ๅ‘ๆ— ่‡ช็Žฏๆ— ้‡่พนๅ›พ๏ผŒ้œ€่ฆๅฏนๆฏๆก่พนๆŸ“่‰ฒ๏ผˆ1,2,3๏ผ‰๏ผŒไฝฟๅพ—ๆฏ็ง้ขœ่‰ฒ่‡ชๅทฑ็š„็‚นไน‹้—ดๆฒกๆœ‰่พน๏ผŒๅ…ถไฝ™็š„ๅฟ…้กปไธคไธคๆœ‰่พน๏ผŒๆฑ‚ไธ€็งๆ–นๆกˆๆˆ–ๆ— ่งฃใ€‚

็›ดๆŽฅๆจกๆ‹Ÿๅณๅฏโ€ฆโ€ฆ

ไปฃ็ ๏ผš61681851

*E. Another Filling the Grid

ๆœ‰ไธ€ไธช nร—n ็š„็Ÿฉ้˜ต๏ผŒ้œ€่ฆๅฐ†ๆฏไธชๆ ผๅญ็”จ 1โˆผk ็š„ๆ•ฐๅญ—ๅกซๅ……๏ผŒ่ฆๆฑ‚ๆฏ่กŒๆฏๅˆ—้ƒฝๆœ‰่‡ณๅฐ‘ไธ€ไธช 1๏ผŒๆฑ‚ๆ–นๆกˆๆ•ฐใ€‚nโ‰ค250,kโ‰ค109ใ€‚

O(n3) ็š„ dp ๅพˆๅฅฝๆƒณ๏ผŒ็›ดๆŽฅไปค fi,j ่กจ็คบๅˆฐ็ฌฌ i ่กŒๅทฒ็ปๆœ‰ j ๅˆ—ๆœ‰ 1ใ€‚

่€ƒ่™‘่ฝฌ็งป๏ผŒๆžšไธพไธ€ไธช t ่กจ็คบ่ฟ™ไธ€ๅˆ—ไน‹ๅ‰ๆœ‰ๅคšๅฐ‘ๅˆ—ๆœ‰ 1๏ผŒ้‚ฃไนˆ่ฟ™ไบ›ๆ ผๅญๅฏไปฅไนฑๅกซ๏ผŒไธบ ktใ€‚ๅ…ถไธญ jโˆ’t ไธชๆ ผๅญๅช่ƒฝๅกซ 1๏ผŒๅ…ถไฝ™ๆ ผๅญไธ่ƒฝๅกซ 1ใ€‚่ฟ™ๆ ท็›ดๆŽฅ่ฝฌ็งป่ฟ‡ๅŽปๅณๅฏใ€‚

็”ฑไบŽๆฏไธ€่กŒไนŸ่‡ณๅฐ‘่ฆๆœ‰ไธ€ไธช 1๏ผŒๆ‰€ไปฅ่ฝฌ็งปๆ—ถไธ€่กŒไธญๆฒกๆœ‰ไธ€ไธช 1 ็š„ๆ–นๆกˆๆ•ฐๅ‡ๆމๅณๅฏใ€‚

ไปฃ็ ๏ผš61682746

็ป“ๆžœไธ€็œ‹้ข˜่งฃๅ‘็Žฐๅคๆ‚ๅบฆๅฏไปฅๆ›ดไผ˜ใ€‚

ๆˆ‘ไปฌ่€ƒ่™‘ๅฎนๆ–ฅ๏ผŒๆœ‰ i ่กŒ j ๅˆ—ๆฒกๆœ‰ 1๏ผŒๆ‰€ไปฅ็ญ”ๆกˆๅฐฑๆ˜ฏ๏ผš

โˆ‘i=0n(โˆ’1)i(ni)โˆ‘j=0n(โˆ’1)j(nj)k(nโˆ’i)(nโˆ’j)(kโˆ’1)ni+njโˆ’ij

ๅฝ“็„ถๅ†™็š„ๅฅฝ็œ‹ไธ€็‚นไนŸๅฏไปฅๆ˜ฏ๏ผš

โˆ‘i=0nโˆ‘j=0n(โˆ’1)i+j(ni)(nj)k(nโˆ’i)(nโˆ’j)(kโˆ’1)ni+njโˆ’ij

่ฟ™ๆ ทๅฐฑๅฏไปฅ n2logโกn ๅ•ฆ๏ผ

็„ถๅŽๆˆ‘ไปฌ่€ƒ่™‘็ปง็ปญไผ˜ๅŒ–ใ€‚

ๆˆ‘ไปฌ่ง‚ๅฏŸๅŽ้ข้‚ฃๅช โˆ‘๏ผš

โˆ‘j=0n(โˆ’1)j(nj)k(nโˆ’i)(nโˆ’j)(kโˆ’1)ni+njโˆ’ij

ๆˆ‘ไปฌๅ‘็Žฐๅฅนๅฏไปฅ่ฝฌๆขๆˆไธ€ไธชไบŒ้กนๅผๅฑ•ๅผ€็š„ๅฝขๅผ๏ผŒไนŸๅฐฑๆ˜ฏๆŠŠๅŽ้ข็š„ (kโˆ’1)ni+njโˆ’ij ็œ‹ๆˆๆ˜ฏ (kโˆ’1)i(nโˆ’j)โ‹…(kโˆ’1)nj๏ผš

โˆ‘j=0n(nj)(knโˆ’i(kโˆ’1)i)nโˆ’j(โˆ’(kโˆ’1)n)j=(knโˆ’i(kโˆ’1)iโˆ’(kโˆ’1)n)n

ไบŽๆ˜ฏๆœ€็ปˆ็ญ”ๆกˆๅฐฑๅ˜ๆˆไบ†๏ผš

โˆ‘i=0n(โˆ’1)i(ni)(knโˆ’i(kโˆ’1)iโˆ’(kโˆ’1)n)n

ๅคๆ‚ๅบฆ O(nlogโกn)ใ€‚

Cite this post

@misc{pu2019oiicpccodeforcescodeforcesvp,
  author = {Pu, Fanyi},
  title  = {CodeForces VP ่ฎฐๅฝ•},
  year   = {2019},
  month  = {8},
  url    = {https://pufanyi.com/blog/oi-icpc/codeforces/codeforces-vp}
}