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
CloudFrontのHost Header転送設定でパケットの中身はどう変わるのか?
nagisa53
1
210
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
110
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
0
140
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.4k
AIエージェント勉強会第3回 エージェンティックAIの時代がやってきた
ymiya55
0
140
韓非子に学ぶAI活用術
tomfook
3
1k
Phase03_ドキュメント管理
overflowinc
0
2.8k
昔話で振り返るAWSの歩み ~S3誕生から20年、クラウドはどう進化したのか~
nrinetcom
PRO
0
100
AI時代のオンプレ-クラウドキャリアチェンジ考
yuu0w0yuu
0
440
AWS Systems Managerのハイブリッドアクティベーションを使用したガバメントクラウド環境の統合管理
toru_kubota
1
180
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
260
Phase08_クイックウィン実装
overflowinc
0
2k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Designing for Performance
lara
611
70k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
It's Worth the Effort
3n
188
29k
Scaling GitHub
holman
464
140k
Documentation Writing (for coders)
carmenintech
77
5.3k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
270
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
30 Presentation Tips
portentint
PRO
1
260
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.4k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
160
sira's awesome portfolio website redesign presentation
elsirapls
0
200
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
お疲れ様でした