ICPC2011 アジア地区予選福岡大会

本番

いもすさんがテンプレ打ち込んでいる間にAとBを読む。Aが先に読めて少しめんどいやるだけ問題だったんでいる君にやってもらう。その間にBが読めてBの方が簡単だったのでBに移行して書く。AC。
Cは計算量が分かんないけど探索で解けそうだったが、Dが拡張ダイクストラするだけだったんでいる君に解いて貰う。街の数が6000個になるとかツッコミを入れつつ解いた。AC。
次はけっこう解かれているFに手をつけることに。やっぱりいる君が解く。ほどなくしてAC。
その間にAの紙コードができたので打つ。型が複雑でコンパイルエラーを取るのに手間取ったがAC。
次はCを私が担当して解くことに。普通に書いてみたが間に合わなさそう。なんで文字の種類が多い順に並び替えて枝刈りすることに。交代している君に解いてもらうことに。ちょっと時間はかかったがAC。
次は20面体を転がすだけのEをいもすさんに解いてもらうことに。その間にJを考えていると実装がめんどいが解けることが分かる。Eが詰まった頃合いを見て交代する。私がコードを担当して、並行して紙の上でいる君がJのデバッグしながら解く。驚くほどのコンパイルエラーの少なさで通る。なんか入力を逆にしてたのを直すとサンプルが通ったのでsubmit。TLEを食らうと思ったらWA。
最後の5分位で高さが変わる部分で、かつ行きと帰りが同じ場所を通る場合におかしくなってることに気づき修正してsubmit。AC。
Eのデバッグは結局終わらずcontest is over。

反省

終盤で、紙デバッグをしてたお陰でJ問題をバグを余り出さずに解けたのは良かった。
しかしEのコードがいもすさんにしか読めない状態になってしまっていたのは非常によろしくなかった。去年の最後も割りと似たような状況になってしまっていたので、やっぱり人を説得できない解法(コード)で問題を解くのはやめといた方がよさげ。
あと、Sake Challengeに行く途中でiwiさんと話してたら、「いる君がずっとコード書いてるけどもっと並列したら?(意訳)」みたいなこと言われた。個人的にもそれは考えている所であるが難しい問題である。一応序盤は問題文読んだり解法を考えたりで並列しているが、いる君がコードを書きすぎてる気もする。また中盤から終盤は、一応2並列でやってるつもりだけどそこまで上手く機能しきれてない気が。
メンバーのポテンシャル的にはあと1問は解けるべきで、(今はできないが)最良のパフォーマンスを出せば2問は解けそうな気もする。ここまで来ると個人練習よりもチーム練習の方が重要になってきたのを感じる*1。とりあえず台湾大会はどうしようもないので今の方針で行くとして、(行けるなら)世界大会までにチーム練習をして戦略を練っていきたい所。

その他

  • Jag day4の時にも感じたけどうちらは他の人に比べて長いソースを書くっぽい
  • Sake Challenge中に、ここの解説にソースコードを乗っけて欲しいっていう話を聞いたけど、乗っけて欲しい人はコメントに書くかリプライを飛ばして下さい。対応します。

*1:というか個人練習は勝手にやってるし