80 likes | 172 Views
ICPC 国内予選練習会 2012/05/27. hos.lyric. A. 余り が足りない?. 解法の例: 条件を満たす数を順に生成していって, x i の中にない最小のものを答える B = 0 の場合に注意 ( サンプルにある ) データにミスがありました,申し訳ありません N を N - 1 と書いていてバグが入りました ……. B. カラフル な パネル. 白いパネルはすべて同じ色に変えるとしてよい DFS などで数える. C. 予定は未定. 区間を右に 10 分広げれば典型的な区間スケジューリング問題 Greedy or DP.
E N D
ICPC 国内予選練習会2012/05/27 hos.lyric
A. 余りが足りない? • 解法の例: 条件を満たす数を順に生成していって,xiの中にない最小のものを答える • B = 0 の場合に注意 (サンプルにある) • データにミスがありました,申し訳ありません • Nを N - 1 と書いていてバグが入りました……
B. カラフルなパネル • 白いパネルはすべて同じ色に変えるとしてよい • DFS などで数える
C. 予定は未定 • 区間を右に 10 分広げれば典型的な区間スケジューリング問題 • Greedy or DP
D. 広がっていこう • うさぎたちの位置を状態として Dijkstra • うさぎが多すぎるときすぐ -1 を出力するようにすると速くなる • 国内予選は案外データセットが大量に入っている傾向あり (1 番目の入力を覗いて確認しよう)
E. 高階関数のお勉強 • 次のいずれかしか作れないことがわかる: • (B (B ... (B A) ... )) • (B (B ... (B B) ... )) • 文字列の各区間に対してどれが何通り作れるか求める • O((長さ)5) • 3 k - 2 文字でない区間はスルー,短い区間で作れる関数は少ない,などで定数が小さくなる
F. 集団引越し計画 • 最小カット • pi,jは最大のものから引いておいて最小化問題に p'i,2 p'i,3 p'i,4 p'i,1 ∞ ∞ ∞ ∞ cld3 cld1 cld2 s t p'i,4 p'j,1 p'i,2 p'j,3 ∞ ∞ ∞ ∞
G. にちようびのおでかけ • 正方形 [-r, r] × [-r, r] で区域を求めてあとで円との共通部分の面積を求める • 1 番目・ 2 番目に近い店を決めれば O(n2) 回の凸多角形切断で区域は求まる • 順番を工夫すると同じ切断をたくさんするのでまとめることができ,2 番目の店を決めて分割統治すると O(n log n) 回の切断でできる • 別解: O(n log n) か O(n2) の Voronoi図を使う