純ブログ

ちょっとプログラミングしてる人のブログです。

CODE THANKS FESTIVAL 2014 A日程 参加記

12 月 7 日にコワーキング・スペース MONO で行われた, (株)リクルートホールディングス主催のフェス型プログラミングコンテスト, CODE THANKS FESTIVAL 2014 に参加した.

会場到着からコンテスト開始まで

会場の最寄り駅に到着:

西と東を間違えて

14 階のエレベータホール前で

受付開始. T シャツを貰って席につく.

ハンドルネームを誤字る. (jun でも良かった)

目標:

5 問正解でトートバッグがもらえると聞いて

chokudai さんにサインを貰う.

こんな感じでした.

コンテスト

A 問題

頭が回ってなくて, 入出力例を見てようやくカメとツルの足の本数を把握する. 00:55 (開始から 55 秒後, 以下同様) に Accepted (AC).

B 問題

読む. あー, 見たことあるけど解いたことないなー. 貪欲で行けないかな~. (それ以上考えてなかった.) 全探索でいけることに気づいて実装. main 関数の最初で宣言してた変数を for の中でまた宣言してて 2 Wrong Answers (WA). そのあと気づいて修正, 10:45 に AC.

C 問題

めっちゃ簡単, やるだけ. 13:20 に AC.

D 問題

なぜか全探索を実装, 当然 Time Limit Exceeded (TLE) (WA なケースもあった. 1 つだけ AC). a,b,s,t の大小関係を全通り図に書く. それを見ながら間違った条件分岐を実装, WA (また 1 つだけ AC だった). 冷静になり, えっなにこれはと思いながら修正, 55:26 に AC.

ここまで順調

1 時間以内に 4 完, これは 5 完いけるでしょ, と思った.

E 問題

何も考えずに  O(RCN^2) な全探索を実装, 当然 TLE. そういえば剰余って遅いんだっけ. そう思って if 文に書き換えるも TLE. (時間計算量は変わってないので当たり前.) 入力時に石像の状態求めておけば早くなるんじゃね? などと思って変更, 提出. なんか Runtime Error (RE) だらけ.

あれ?

5 完阻止されている気分になる.

F 問題

一度 F 問題を読んでみる. いろいろ図を描いてるうちに, グラフっぽい, 自分より上の人数数えればいいんじゃね? と思いつく. 幅優先を実装, しかし WA. 順位関係の情報に高橋君 (参加者 1) が入ってない (1 3 とか 3 1 とかがない) ことあるんじゃね? と思って修正するも WA. 三項演算子を if 文に変えてみる. 当然 WA. 提出結果をよく見てみると, (参加当時) 最後の 5 つだけが WA になってた. えー, コーナーケースあるの...? なんだろう...

また E 問題

列のループの条件をミスってて無限ループしてた. 修正して提出, WA (と TLE). オーダーを下げる方法が思いつかない.

もう一度 F 問題

コーナーケースを考えてみる. ...... 思いつかない. 適当に弄って投げまくる. もちろん全部 WA (最終提出は 174:50).

諦め

トートバッグもらえないのめっちゃ悔しかったけど, どうしようもなかった. つらい.

最終結果

4 完 (A, B, C, D), 4 WA (B, D 各 2 WA), 52 位だった. 目標 (5 完) 達成ならず... (悔しい) ちなみに, E, F はそれぞれ 6 WA した.

(切実)

コンテスト解説

A, C は解説と同じだった. B は最初の 3 つを貪欲に選んで良かったみたい. D は if 文使わない方法もあるんだ, へー, と思った (小並感). E は, 各操作が可換なことから, 操作を忘れなかった場合を求めておいて, それに忘れた操作を Undo (?) すれば良いと聞いて, 若干そんな気がしてたようなしてなかったような感じになった. F はコーナーケースでも解説されるでしょと思ってたけど,そんなことはなかった. G, H はチラ見しただけだったのでよく聞いてなかった (良くない. H のハッシュは聞いてた).

懇親会

ひたすらコミュ障していた.

感想

トートバッグもらえないのめっちゃ悔しかった.

来週は CODE THANKS FESTIVAL 2014 B日程にオープン参加するつもり日本情報オリンピック 2014/2015 予選の方に参加することにしました (2014/12/13 追記).