moritaoy’s blog

グルメブログ説があります

ICPC2020 模擬国内予選 参加記

開始前

メンバーは、Endered君とtoyama君と組むことになりました。

去年のメンバーの内一人が入れ替わった形です。

 

ライブラリとして、普段使っているもの一式は私が持っていくので、二人は自由に使いそうなものを持ってきてくださいとお願いしました。

二人とも何も持ってきませんでした。

本番

ThinkMETの序盤の立ち回りは基本以下の通り

Endered君

temp.cppを書く。基本Cを担当するが、変わり得る。

toyama君

原則Aを担当する。

moritaoy(私)

基本Bを担当する。temp.cppが出来上がるまでに、ざっと序盤の問題を目を通して

  1. Endered君がCを担当してよいか
  2. 序盤に私が持つべき問題があるか
  3. toyama君が解き終わったら何をすべきか

を考える。

 

今回は、ABC担当は変わらず、toyama君がAを終わった後Dを飛ばしEを読むようにお願いする。(文字列系はまずmoritaoyが持つため)

tempが出来たので、Bに取り掛かる。

読むとやるだけだったので、やる。

 toyama君がサクッとAを通して、Eを読み始める。

順調にBが出来上がり。前を見てEndered君がまだ実装に取り掛かれていないことを把握する。

sampleにDがぎりぎりのケースが入っていたので、sample合ったら出すか~と考え、そのまま提出してBがAC

Endered君が困っていそうだったので、概要を聞きます。なんか、やるだけだけど重そうだしなんかヤバいと言っている。

Dを読む。文字列の見た目をしたアドホックだった。(この時点で別に私が取り組む必要はなくなるので、Endered君が解き終わったら投げるのも手と考えた)

その後30分ぐらい手を動かしながら悩み、上手い方法が思いつかない。

Endered君が提出しま~す。WAを繰り返していて辛そうだったのでsample生成に取り掛かる。全部正しい。愚直解法を書いてくれ~と頼み渋々Endered君が書く。

テストする。ダメなケースが出る。なぜダメか解らない。うーん。

私がDに逃げて暫くするとEndered君がバグに気づいてCをAC。このタイミングでDの方針が立っていなかったのでEndered君に投げる。

ここで大体1:30経過。

EとFをちらっと見る。Fはビジュアルからヤバい。この時点で私もEに取り掛かることにした。

toyama君が上の間にコードを書いて、WAを出している。問題概要を聞く。(ここで意思疎通に失敗して理解を誤る)

なーんかこういうのは燃やす埋めるかな~と考える。解けない。

トイレに行く。戻ってくる。尺取りが出来そうと考える。

問題をよく読む。ん?toyama君に聞く。条件を勘違いしていた。2SATじゃん。

この間にEndered君がDをACしてFに取り掛かる。

残り1時間を切っている。

toyama君に2SATの解き方を教えて実装をお願いする。kosarajuを写経して、toyama君に投げる。詰まっていそう。

私も実装することにする。実装が終わって実行する。sample合っちゃった。

実行する。おっっっっっっっっそ。

尺取りの左端で、枝狩りできることを考えてやる。

実行する。おっっっそ。でもそれっぽい値が出てるので待つ。

10分後、実行が終わって出す。通っちゃったよ。

2つ目を回す。15分経っても出ない。

toyama君に遅い~ってぼやくと、O3つけてる?と聞かれた。そういえばaliasついてないんだった。

O3を付けて並列で回す。2分後ぐらいに初めに回した奴が終わる。

残り1分。E2回目提出。AC!

ターミナルを見る。O3ついていたのが終わっている。キレそう。まぁ順位変わらないからよかったけど。

感想

いたって微妙。だけど明らかな改善点があるかというとこれも微妙。

チームとしては、Cをバグらせて1時間近くかけているのはかなりヤバいので、こういう時はもう一回書き直すように言うのがいいのかな?ここを節約できていれば、Fが通せた可能性は十分ある。

Dは素直にわからなかった。精進不足。結構答えに近い発想は浮かんでいた(連続する左カッコはトリマ纏めてしまって1つとみなしてゴニョゴニョ)けど詰め切れずボツにしていた。ただ、ここから上手い事解法まで持っていけたかというと無理なのでう~ん。

Eは一度問題文をしっかり読むべきだったかも。読解が本質。というかtoyama君も読解に苦しんでいたのでダブルチェックは有効。パッと見て2SATって思えたので、そこさえ伝えればtoyama君だけでも解けたかもしれない。

 

問題に対する感想

A: はい。

B: はい。

C: パッと見バグりそうな要素は正方形領域だけに見えたけど、みんなxyの取り違えでバグらせてた。はえ

D: 素直な難しさ。悩んで手ごたえがあるけど答えにたどり着けないこの感じは久しぶりだった。個人的に良問。

E: 見る人が見たら2SATだなぁとなるのはそう。

F: い つ も の 1年の時ITP1の問題で、教授と部長を2時間拘束してサイコロ転がした記憶がよぎる(本当にすいませんでした)

G: ちゃんと読んでないけど、幾何要素に目をつむれば面白そうだった

H: 読んでないです...