- masashinakata
- 5998
- 1
- 0
- 0
先週のSRM648の公式解説の公開が遅れてしまっていて申し訳ありません。Hard の簡単な説明をお願いされたので流します。 Div1Hard: Fragile(850) n頂点(区別あり)の単純無向グラフで橋をちょうどk本持つものの個数をmod10億7で求めよ。 0≦K<N≦50
2015-02-12 23:20:28@evima0: Hard 解説1: n≦N, k≦Kのすべてのn,kについてn頂点k橋の「連結な」グラフの数が求められたら、それを何個か並べてN頂点K橋にしたものが問題のグラフなので、普通のn^4のDPをやるだけで答えが求まります(二項係数を使う)。(つづく)
2015-02-12 23:27:33Hard 解説2: というわけでn頂点k橋の連結なグラフの数をnが小さい順に求めていきます。とりあえずk≧1のときを考えます。突然ですが頂点0と1の間に辺があってそれが橋であるようなグラフを考えると、その辺を取り除くことでグラフが2つに分裂するので、(つづく)
2015-02-12 23:31:07Hard 解説3: 0側の頂点数と橋の数を全部試すことで再帰的に数が求められます。これの何が嬉しいかというと、連結なn頂点k橋のグラフを1つuniformly at randomにとってきたとき、頂点0と頂点1の間に橋がある確率はk/(n choose 2)なので、(つづく)
2015-02-12 23:35:08Hard 解説4: 今求めた数を (n choose 2)/k 倍することで、n頂点k橋の連結な無向グラフ全体の個数が求まります。k=0だとこの方法が使えませんが、n頂点の連結な無向グラフの総数(Google可能)からk≧1のときを全部引けばOK。全体O(n^4)時間。(完)
2015-02-12 23:38:44週刊Petr(petr-mitrichev.blogspot.com/2015/02/this-w…) の648Hardに対するコメント "requiring some serious combinatorics and.."(参考:rng_58> well, for me it's like standard 500)
2015-02-13 21:49:25Petr 様が"exceptionally tricky, requiring some serious combinatorics and dynamic programming mastery"っていう問題がstandard 500って…りんごさんの感覚はぶっとびすぎだなあ。
2015-02-13 21:55:41スピード勝負ですらtouristとsemiexpで互角なレベルだから、ITMOにICPCで勝つにはtourist以外の人が嵌るかりんごさんしか解けないような数学ゲーが出るしかないんじゃないかな
2015-02-13 22:00:37@1_000_000_007 2013 の B はまさにその数学ゲーでしたが結局ITMOにも最後に解かれた上、もしそれが解かれなくても他で圧倒的な差をつけられ完全敗北という感じでしたね。
2015-02-13 22:03:57@evima0 ただ、あのBの時間とかを見るにやっぱり高度な数学ゲーは圧倒的にUT有利な気がします。(まああのセットで圧倒的な差をつけられるのは仕方がないと思う)
2015-02-13 22:05:46@DEGwer3456 でもSRM599(僕が初めてwriterした回)のPetrが Petr vs tourist含む他739人 でもおそらく勝ってたほどの壮絶な圧勝で(otinn.com/topcoder/al/su…)、これくらいのパフォーマンスをだせばいけそう。
2015-02-13 22:06:48SRM648(evimaさん回)のmed,そんなにバグりやすいかなあ.まあハマるかどうかは運のことが多いからナントモいえないけど
2015-02-17 10:49:45まだ、KitayutaMartやってます。方針はできてるつもりだけど、なかなか立式ができない…。こういうのは非常に苦手…
2015-02-20 00:15:22あ…しまった「先週」月曜のSRM 648のEditorialをまだ書いてなくて新たに650Hardも加わったのに音ゲーを24曲もやってしまっていた…
2015-02-20 00:22:30