2016-12-17
SRM 691
https://competitiveprogramming.info/topcoder/srm/round/16730/div/1
Div1 Easy (300) Sunnygraphs
問題
- 0~N-1までのN個の頂点がある
- 各頂点iは、頂点a[i]と辺を持つ
- 0本以上の任意の辺を頂点Nとつなぎ直すとき、頂点0と1が連結である場合の総数を求める
方針
- (終了後)
- pekempeyさんの解説を読む
- 0から行ける頂点に1、1から行ける頂点に2をORしていく
- 値が0,1,2,3の頂点をそれぞれw,x,y,zとする
- (1)xをNにつなぎかえるとき(2)yをつなぎかえるとき(3)xとyをつなぎかえるとき(4)xとyをつなぎかえないとき、それぞれで計算して、最後に2^w倍する(wの状態は連結に無関係なので全ての場合がありうる)
- https://github.com/firewood/topcoder/blob/master/srm_6xx/srm_691/Sunnygraphs.cpp
結果
--- 0pt 118th/411 rating 1523 -> 1510 (-13)
これは全く手が出なかったが、コードはシンプル。
- 11 https://t.co/Gdj7iEgcO3
- 9 http://www.adventar.org/calendars/1625
- 7 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 4 https://t.co/EiFQOfipIt
- 3 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 3 https://topcoder-g-hatena-ne-jp.jag-icpc.org/keyword/SRM
- 1 https://www.google.com/
- 1 android-app://com.twitpane
- 1 https://s.hatena.ne.jp/ksoda/stars
- 1 https://topcoder-g-hatena-ne-jp.jag-icpc.org