Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SRM573 Div1Hard Div2Hard 解説
Search
tozangezan
March 15, 2013
Technology
1
270
SRM573 Div1Hard Div2Hard 解説
解説です。上げなおしました。
tozangezan
March 15, 2013
Tweet
Share
More Decks by tozangezan
See All by tozangezan
SRM578 解説
tozangezan
0
270
Other Decks in Technology
See All in Technology
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.4k
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
180
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
150
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1k
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
200
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
140
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.5k
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
The agentic SEO stack - context over prompts
schlessera
0
650
Building Applications with DynamoDB
mza
96
6.9k
Why Our Code Smells
bkeepers
PRO
340
58k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.4k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
350
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
650
Technical Leadership for Architectural Decision Making
baasie
2
250
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
71
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Transcript
WolfPack(Div1 Hard) WolfPackDivTwo(Div2 Hard) 解説 SRM 573
問題概要 オオカミがn頭いて、最初(x[i],y[i])にい る それぞれのオオカミは1回の移動におい て、隣接するマスのうちのどれか1つに進 む M回移動したときにn頭すべてが同じ場所に
いた 移動の仕方は何通りあるか、1000000007で 割った余りを求めよ。
例(Example 2) 2回の移動で 真ん中に行か ないと…… 2回の移動で 真ん中に 行かないと… 余裕!
(2,0)以外に集まるこ とは出来ない(両端の どっちかが間に合わな い) 左右にいるオオカミは (2,0)に向かってまっ すぐ向かってくること は確定 真ん中のオオカミは1 回好きな方向に向か い、もどってくる
素朴な解法 DFSするだけ→O(4NM2)くらいだろうか、さすがに 間に合わない ということで、何かしらのDPをする。 最後に集まる場所をそれぞれのオオカミの移動は 別々に考えて、最後にそれらをすべて掛け合わせ ればよい。
→すると集まる場所はO(M2)くらい。それぞれ についてDPをするとO(MN)くらい、combinationを 計算するとO(N)だろう。これだとO(NM^2)。 これでDiv2のほうは通る。
満点解法に向けて(1) このような移動は…… こう考える!!
満点解法に向けて(2) 次に、(0,0)から各点に行く方法が何通りあるか を考えてみる。 (何も数字が書かれていないところはすべて0通りです)
満点解法に向けて(3) さっきの図を45度回転 させてみましょう!! 見た感じnCi*nCjみたいな感じになっている…?? →正しい (n+1)Ci*(n+1)Cj=(nCi+nC(i-1))(nCj+nC(j-1)) =nCi*nCj+nC(i-1)*nCj+nCi*nC(j-1) +nC(i-1)*nC(j-1)
なので、帰納法で証明できます オオカミごとに独立に動けるので掛け算する
満点解法 ということで、座標を45度回転させ、n点を平行 移動するときにそれぞれ何通りになるかを計算す ればよいです(この時点ではまだO(NM^2)) しかし、このときスライドするだけなので、 x1y1+x2y1+x3y1+x1y2+x2y2+x3y3 =(x1+x2+x3)(y1+y2) のように独立にもとめることで、計算量はO(MN)
にすることができ、これで通すことが出来ます。 また、nCk mod pは他にもよく出てくるので自分 で調べてください。JOI2011のKeycardsがおすす めです。
まとめ Div1 提出者数:11 正解者数:4 Div2 提出者数:47 正解者数:12
お疲れ様でした