memo46

競プロの精進記録その他。

ACPC2020 参加記

day 1

別のことが忙しかったので欠席。

day 2

UHISHIRO(siro53, suta, kiyoshi0205)で出ました。

内容

  • ぼく「タイピングやるだけ」Aを通す。
  • その後すぐsutaがBを通す。
  • この間に僕がEを読んでいて、まぁDPでいけるんじゃね~みたいな感じのことをsutaに伝える。少し相談して解法が出る。
  • 少しした後にkiyoshi0205がCを通す。
  • 僕がEでDPを実装するがサンプル合わない。もう一度sutaに相談して少し考えると、嘘DPであることがわかりました。ごめんなさい...
  • 直してEが通る。
  • たしかこの間にkiyoshiがFを読んでて、「凸関数の和は凸だし三分探索やるだけでは?」って叫んでた。kiyoshiがFを書く。WAが出る。
  • 平坦な場所ができるとまずいので、それをsutaと相談してなんやかんやして通してた。僕は問題を全く知らず... その間にGを読む。
  • sutaがダイクストラしたいみたいなことを言ってたけど、愚直に辺を張ると最悪O(N2)本になるケースが作れてしまったのでどうしようとなる。
  • kiyoshiにも概要を説明して、Jを考察していたsutaに参加する。全く歯が立ちません...
  • しばらく考えていたけど全くわからん、といったところでkiyoshiがGを区間に辺を張るテクで解けたと主張。Lorentさんの記事を引っ張りだして実装を開始。その間にJを考えていたけどオーダーが落ちる気配がしない......
  • kiyoshiがGを提出するけどWA。なんで???となるがソートし忘れていたらしく、直すとAC
  • 残り5分でも粘ってJを考えていたけどわからずコンテスト終了ーーー。

結果・反省

6完19位

Eレベルのやつを人に相談するな、自分で通せ!!!

早解きできてればRamen as a Serviceに勝てたかもしれないため大反省(1位差だった)

Give usには勝てたらしい、kiyoshiのおかげ f:id:bakamono1357:20200922225726p:plain

day 3

昨日と同じくUHISHIROで出た

内容

  • Aを見て「面倒なbfsするやつか!?」と思って激焦りする
  • sutaがBを爆速で書いてAC、全体3位で草 すげえ
  • よく読むと簡単な場合分けするだけだった、kiyoshiがCを通した後Aをぱぱっと書いてAC ここまでの速度はかなり速かったと思う
  • kiyoshiがDを解いてて、僕がEの概要をsutaから聞く。kiyoshiがDがギャグらしいので書いてたけど落ちた。
  • 僕がsutaとEを詰める。実はmodを取る回数はそんなに多くないのでは、みたいなことを言っていると、今の数字よりも小さいかつ今見てるindexに最も近いindexを高速に探せればいいねとなり、これはセグ木でできそうとsutaが言うので書いて頂く。(実装方針がぱっと思い浮かばなかった)(カス)(ごめん)
  • kiyoshiがDを再考して実装して出すと落ちる。この間にsutaがEを書き、kiyoshiの解法を聞きながらDのデバッグをする。
  • 解法を聞いてると序盤で既にダメな箇所が見つかる。2人で笑いながら修正するとAC
  • sutaが書き上げるけど、僕が出したサンプルが通らない。kiyoshiが介入すると、実はもっと実装が楽になることがわかる。sutaが書き直してAC
  • この間にFをkiyoshiと詰めてた。添字とか細かいところでkiyoshiと食い違いがあったけど、僕が書いてAC。
  • 3人でGを考えてると、kiyoshiがbitDPを思いつくけどO(2m*m3)らしい、後にsutaが高速化を思いつき、2人で必死にデバッグしているところを僕は眺めていました...(かなり根本的なところで分かってなくて考察に参加できなかった、ちゃんとupsolveしました...)

結果

6完35位

僕に実力があればなア

チーム練で初めてdiscordの画面共有を使ってデバッグしたけど、めちゃくちゃ効率が良かったのでこれからも採用!w f:id:bakamono1357:20200922231031p:plain

反省・感想

  • 僕がチームに頼りすぎ(一人で解ける問題を増やしなさい)(実力不足)
  • AOJ-ICPCを埋める、知識をつける
  • これからチーム錬をもっとやる
  • 会津大学のみなさん、並びに作問陣のみなさん、AOJ運営の方々、楽しいコンテストをありがとうございました。