RUPC2015 day1 & day2 参加記
day1
南草津から立命館大学に向かうバスの中に、@zxcv_13kさんがいたらしいが、あまりの人の多さに特定でず。到着してバスから降りても、面識がないので誰かわからない。会場に到着して、アイコンの書いてある名札を選ぶ段階になってようやく、お互いに特定する。
開始時刻になる。
自己紹介タイム。飛ばされる。
チーム編成タイム。事前に@zxcv_13kさんと@pappagukunさんの三人でチームを組もうという話を指定たので、高みの見物。Div2とDiv1に分けられていた。
外にはお菓子が大量においてあって、あとはKLabと書かれた謎のエナジードリンクが大量にあった。中身はRedbullだった。
ネットーワークにつながらなくてChromeのゲームで遊んだりする。
チーム名は、ちょうどChromeのゲームで遊んでいたので、その下に書いてある ERR_INTERNET_DISCONNECTED にすることになったが、AOJに username is too longと怒られたのでtoo_Longに決定した。
コンテスト開始。
Aを私が書く。適当に提出。WA
誤差死を疑っていろいろ試しているうちにWAがかさむ。気がついたら3WA。印刷にまわす。
その間にBの解放が固まっていたらしいので、@zxcv_13kさんに任せる。そして@pappagukunさんと二人でAのバグを探す。
B問題でWAが出たらしく、@zxcv_13kさんと@pappagukunさんがデバッグ
WAが大量に出る。コードを除くと、累積和がバグっていた。サンプルが通ってしまうのでたちが悪い。
B AC この時点ですでに半分程度時間が経過していて焦る。
記憶が曖昧だが、どうやらBを頑張っている間にCを書いていたらしく、とりあえず提出する => AC
A問題。連続した記録のうち、同じ選手の記録をパスとして扱っていることが判明。=> AC
とりあえず3完できたことに安堵しつつ、D問題。
分からない。DPっぽい。悩む。終了。
D問題は解けるべき問題だった。他の問題も、全員チーム戦に慣れていなくて段取り悪すぎた。
お菓子を食べてから帰宅。
day2
バスで@zxcv_13kさんと出会う。
集合時刻ぎりぎりのバスに乗ったはずなのに、会場につくと、空席が半分ほど。
予定されていたリクルートの宣伝が解説後に変更になる。暇なので久しぶりに艦これをしていると、@pappagukunさんに「艦これってどんなゲーム何ですか」などと哲学的な問を投げかけられて狼狽する。
チーム編成。せっかくなので、今日は違う人とチームを組もうということに。
Div2、Div1内でチームが作られる。
Div2、そもそもレーティングなしの人が多い。灰 or 白の人の名札を集めて、緑の人が二枚引く仕組み。@zxcv_13kさんと@odan3240さんの名札を引いたが、2日連続なので、隣にいた@bn_naoyukiさんとスワップ。
コンテスト開始。
Aを@bn_naoyukiさんが、Bを私が、Cを@odan3240さんが読む。B、やるだけ。余裕宣言をしてコーディング。
絶望的にバグる。サンプル通るがRE。印刷に回す。
Aを@bn_naoyukiさんが書く。Bのミスはすぐに見つかったので、二人でCを考える。一次元数直線。ワープ。DPっぽい。
A問題。サンプルが通らない。印刷。
Bを書く。 => AC
C、@odan3240さんがDP解を書く。 => WA
@bn_naoyukiさんが苦戦しているようなので、解説を入れる。
@bn_naoyukiさんに見られながらAを書く。 => WA
0から始まっている領域の扱いがバグっている。修正。 => WA
焦る。全部の領域が塗られている時にバグ。特別扱いにして別途出力。 => AC
D問題はこれまでの細切れの時間で解放がわかっていたので、面倒な関数だけ作って後を@bn_naoyukiさんに任せる。
Cを考える。分からない。時々Eを考えたりしてた。
D問題。解放が伝わっていなかったみたい。三人で一緒に解く。書いたのは@bn_naoyukiさん。
サンプルが通らない。印刷に回す。
C問題。幅優先でいけるんじゃねって@odan3240さんが主張。なんかそんな気がするので任せた。
到達したかどうかをboolで管理していたので、最初に到達した時が最小コストとは限らないことを主張。bool管理を最小コストで管理するようにして、更新が発生したらキューに入れる。
提出。=> TLE
なんかDijkstraっぽいねって話になる。Dijkstraだということに気がつく。修正して提出。 => AC
(注釈:そもそもDPだと思い込んでいたのが過ちだった。最短コストを求めるという時点でDijkstraの可能性は考えるべきだった)
D問題の修正。わからない。特にバグはなさそう。
なぜかほんの少しだけ小さい。謎。
いろいろ試して、バグがない場所を特定してゆく。と、バグが見つかる。
バグってるのはわかるがなぜそうなるのかわからないが、いろいろ考えていると1年1月0日からの日数がオーバーフローしていることに気がつく(1年1月0日からの日数を7で剰余をとって曜日を判定していた)。
@odan3240さんがよくわからない手法で解決。 => AC
終わってみると@reew2nくんが一人だけKを解いていてプロだった。