全列挙さんに脅されて、この記事を書きました。mencottonです。
JOI'20本選に参加して244点でした。個人的にはかなり成功したと思ったのですが、3問目を23人も通しており、本選落ちです...
Day0
クエリ系の問題が出てきたときに殴れるように、一応平方分割を書いて寝た。
思ったよりすんなり書けてよかった
— ひゅ〜Men (@men_cotton) 2020年2月7日
セグ木問が出てもこれで安心!!!(本当か?)https://t.co/Nu7OlUOttv
Day1
学校があったので、学校に行った。KCLCメンバーで事前に話し合った結果、別々に行動しつくばに向かうことになっていたので、昼食を中本にすることは朝から決めていた。
お昼ご飯は蒙古タンメン中本御徒町店にしまふ(めっちゃ混んでたら変えるかも)
— ひゅ〜Men (@men_cotton) 2020年2月7日
(本選前に普通に授業を受けるの図)
行列、すげーーーー
— ひゅ〜Men (@men_cotton) 2020年2月8日
授業が終わったので、適当にクソツイをしながら、中本へと向かった。
好きなデータ構造じゃなくて、"データ構造とは何か"まで忘れてるんだな😅
— ひゅ〜Men (@men_cotton) 2020年2月8日
以前、春合宿とかいう学歴の奴が"相似曲線って何?"とか言ってるのを見た事があるけど、偏差値の低い高校の情報の授業でも出てくるでしょ?
お前、大学以前に高校卒業してる?って話
あらら…😱😱😱
— ひゅ〜Men (@men_cotton) 2020年2月8日
家でゆっくりお休みになられた方が良いと思いますよ…
お大事になさってください…
非人間とはエンカしたんですか?
— ひゅ〜Men (@men_cotton) 2020年2月8日
じゃーくさ じゃくさ じゃーくさ 航空
— ひゅ〜Men (@men_cotton) 2020年2月8日
じゃーくさ じゃくさで アルバイト〜
クソツイをしてたらいつの間にか御徒町駅で降りていて、中本の前に来ていた。
https://t.co/8DLcdlxyNC pic.twitter.com/fNBEvUB6an
— ひゅ〜Men (@men_cotton) 2020年2月8日
実家のような蒙古タンメンを食べ、実家のように腹を壊した。(美味しかったです)
おまたせ pic.twitter.com/9f5WjpYFRF
— ひゅ〜Men (@men_cotton) 2020年2月8日
お腹が小さ過ぎて蒙古タンメン1杯で、破滅…(暫く休みます…)
— ひゅ〜Men (@men_cotton) 2020年2月8日
休憩を終え、無限人いそうなアキバへと向かったが、結局一人でグルコスして終わってしまった(社会性…)
山手線一駅のために電車に来てしまった、う
— ひゅ〜Men (@men_cotton) 2020年2月8日
グルコスACやるか
— ひゅ〜Men (@men_cotton) 2020年2月8日
初グルコス、楽しかったです〜〜〜 pic.twitter.com/xgfMztS3Zt
— ひゅ〜Men (@men_cotton) 2020年2月8日
グルコスを終えTXに乗ると、本選erが結構いた。
Yay! https://t.co/Nxkq927k6e pic.twitter.com/YVo1zZ04tG
— ひゅ〜Men (@men_cotton) 2020年2月8日
実際にみた、可愛い〜〜〜 https://t.co/CUieJlmIjH
— ひゅ〜Men (@men_cotton) 2020年2月8日
Iso氏 ( @19_iso ) ともエンカ〜
— ひゅ〜Men (@men_cotton) 2020年2月8日
幾何解いてた
名刺、1333枚ぐらい刷るべきだったのでは
— ひゅ〜Men (@men_cotton) 2020年2月8日
蟻本を見たり、ツイッターをしたりするなどし、つくばに到着。
思ったより蟻本覚えてたわ!笑 https://t.co/W8uHcJR9Ul
— ひゅ〜Men (@men_cotton) 2020年2月8日
あれ、蟻本に遅延セグ木は無いんだっけ
— ひゅ〜Men (@men_cotton) 2020年2月8日
つくばに…着くば!!!wwwwwwwwwww pic.twitter.com/h4kFuLhNs4
— ひゅ〜Men (@men_cotton) 2020年2月8日
着いたたぬ〜 pic.twitter.com/pxTjKIdb50
— ひゅ〜Men (@men_cotton) 2020年2月8日
割とギリギリだったので、すぐプラクティスをやった。
プラクティス全完に38分もかけてしまった…😥😥😥😥😥
— ひゅ〜Men (@men_cotton) 2020年2月8日
ところで、プラクティスで全完したあと内輪で固まって談笑するのが恒例となっていますが、内輪外からはどう思われているんでしょうね…(私は内輪側の人間なので分かりませんが…)
プラクティスを終え、OSSに関する講義を聞いた。業プロっぽい話を聞くのはあまりない機会だったので、興味深かった。
命名は大事!(素振り)細分化も大事!(素振り)
— ひゅ〜Men (@men_cotton) 2020年2月8日
他のコードを読んで力付くのは本当にそう
— ひゅ〜Men (@men_cotton) 2020年2月8日
得られることがinf個ある
OSSのプルリク、やってはみたいけど本当に怖すぎるんだよなぁ
— ひゅ〜Men (@men_cotton) 2020年2月8日
あと、問題点を見つけられるほど深くソフトを使ってない…
— ひゅ〜Men (@men_cotton) 2020年2月8日
(なんとその後講演者の方からフォローされ、リプライを頂いた)
わー!お揃いだー!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
応援ありがとうございます〜〜〜!!!!!
昨年は誤読により落ちてしまったので、今年は春合宿行けるよう頑張ります💪💪💪💪💪
その後、夕食会場へと直行。自己紹介フェーズでは、人々のツイ垢を特定したり、tk72ersに煽られたりした。
tk72からだけなんだよなぁ(ア)
— ひゅ〜Men (@men_cotton) 2020年2月8日
:(
— ひゅ〜Men (@men_cotton) 2020年2月8日
🧅:徹夜したら満点取れよ〜〜〜
— ひゅ〜Men (@men_cotton) 2020年2月8日
バスに乗り、いつもの独房へ。人々と話すなどし、就寝。
実際の部屋です。
— 41st KCLC (@41stKCLC) 2020年2月8日
530号室にこのアカウントの管理者がいるので、よかったら遊びに来てください! https://t.co/7VQZ42Khz0 pic.twitter.com/KDEetG03pR
「独房」で検索かけたら無限にJOIerが引っ掛かって草
— ひゅ〜Men (@men_cotton) 2020年2月8日
流石に風呂今からでも入れますよね?
— ひゅ〜Men (@men_cotton) 2020年2月8日
風呂ダッシュ、遅くなると煩い輩が占拠するからなのか、なるほどなぁ
— ひゅ〜Men (@men_cotton) 2020年2月8日
風呂後の pic.twitter.com/oT8JaPlrtH
— ひゅ〜Men (@men_cotton) 2020年2月8日
おやすみ
— ひゅ〜Men (@men_cotton) 2020年2月8日
明日は頑張るぞ〜〜〜
今年こそ春合宿行ってやる pic.twitter.com/lsL3BmkSx4
Day2
絶起を回避し、いつもの朝食を食べた。
起床達成おめでとう
— ひゅ〜Men (@men_cotton) 2020年2月8日
朝食目指して頑張りましょう
24時ごろ寝て、4時ごろ一回起きました(何故???)
— ひゅ〜Men (@men_cotton) 2020年2月8日
健康的な独房の食事 pic.twitter.com/mqBWve5xYv
— ひゅ〜Men (@men_cotton) 2020年2月8日
支度を終え、本選会場に向かうまで暇なので、人々に精神攻撃を仕掛ける。
通過しそうな人に「春合宿おめでとうございます!!!」って言って精神的動揺を誘う作戦やるか
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿おめでとうございます!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
バスの号車を誤読した @ageprocpp 、冷えてるか〜〜〜
— ひゅ〜Men (@men_cotton) 2020年2月8日
爆発律じゃ〜ん
— ひゅ〜Men (@men_cotton) 2020年2月8日
そんなこんなで本選が開始する。クスリも決め、準備万端。
— ひゅ〜Men (@men_cotton) 2020年2月8日
魔剤、完飲…
— ひゅ〜Men (@men_cotton) 2020年2月8日
本選、頑張るぞい!!!!!
— ひゅ〜Men (@men_cotton) 2020年2月8日
春合宿!(素振り)春合宿!(素振り)春合宿!(素振り)
本選競技
本選中はスマホの使用が禁止されているため、本選中の行動はその場で手書きしたタイムラインによって記す。(解法のネタバレがあるので注意)
0:01:45 紙の不備が無いことを確かめ、本選開始。取り敢えず1問目「長いだけのネクタイ」に取り掛かる。
0:05:30 1問目なので、適当にソートすれば良さそうなことに気付く。単にソートして調べるだけだと、O(N^2) かかってTLEするので、GCD on Blackboard みたいに左右から累積MAXを取れば良いことに気付く。方針が立ったので、コーディング開始。
0:16:30 コーディング終了。テストケースも一発で合わせる。
0:18:15 提出し、1問目をAC。2問目「JJOOII 2」に取り掛かる。
0:21:45 2問目の考察が終了。消す文字数は固定なので、明らかに先頭と末尾の文字列をたくさん消したほうが良い。先頭をいくつ消すかを決めると、累積和を使い O(log N) で末尾をいくつ消すかが求まるので、全体として O(N log N) でできることが分かった。 実装を始める。
0:35:15 2問目の実装が終了。テストケースも一発で合わせる。
0:38:30 提出するも、TLEで13pts。Range-based-for が遅そうだったので、普通のforに直す。
0:40:45 訂正し、提出。無事AC。3問目の「スタンプラリー 3」に取り掛かる。
0:45:15 高々1回しか曲がらないギャグ問かと思い、実装する。
0:55:45 コーディング終了。テストケースが合わないので、少し直す。
1:04:30 直し終わったので、提出。WAで0pts。複数回曲がるケースの存在を確認。
1:06:45 区間DPでいけることに気付くが、その時点での経過時間も持って遷移しなければ行けないことに気付き、あと回しにしたくなる。
1:10:00 競技中1回目のトイレ。
1:13:15 トイレから帰還し、4問目の「オリンピックバス」を読み始める。
1:16:15 5ptsはやるだけだったので、実装することにする。適当な計算量解析の結果、ワーシャルフロイド法でも間に合うと思い、実装。
1:29:45 実装が終わり、テストケースも無事通ったので、提出。TLEで0ptsが帰ってくる。ダイクストラ法に変更。
1:41:30 ダイクストラ法の実装が終わり、提出。無事に5ptsを獲得。小課題2, 3を少し考えてみたが、何もわからないので5問目の「火事」を見てみる。
1:46:00 5問目の問題を読み終わり、考察に入る。
1:49:45 小課題3までは平方分割+αでできる*1ことが分かる。
1:51:00 競技中2回目のトイレ。
1:53:30 トイレから帰還し、実装を始める。
2:24:30 実装が終わり、テストケースも無事通ったので、提出。しっかりと小課題3までをACし、14pts。C問題に再度取り掛かる。
2:26:00 小課題1, 2は巡回セールスマン問題で解けることに気付く。実装を開始。
2:44:00 実装が終わり、テストケースも無事通ったので、提出。ACし、15pts。小課題3の区間DP解の詳細な考察に入る。
2:47:30 現在位置は始点からみて正の方向にいるか、負の方向にいるかだけ持っておけば良い、それによりDPの遷移もそこそこ単純に書けるとイメージできたので、実装に入る。
3:18:45 実装が終わり、テストケースも無事通ったので、提出。ACし、25pts。この時点で勝ちを確信する。
3:22:30 ここで何を狂ったか慢心し、4問目の嘘解法*2を思いついたので、実装する。
3:25:15 競技中3回目のトイレ。
3:42:30 実装が終わり、テストケースも無事通ったので、提出。WAとTLEが帰ってくる。vector<map<int, pair<long long, long long>>> という型でグラフを作ったので、TLEはある程度想定していたが、小課題1すら通らないのにビビる。適当にINFの値を調整するなどしたが、一向に通らない。
4:00:00 まごまごしている間に終了。最終結果は 3:18:45 時点と同じ、 100+100+25+5+14=244 pts。
— ひゅ〜Men (@men_cotton) 2020年2月9日
解析の時間が開始する。全列挙氏から、3問目の本質*3を教えてもらう。確かになぁという感じになった。E869120氏が熱を出していたので少し心配だったが、余裕で3完+部分点を取っており、流石の貫禄。…と思っていたが、想定より3完している人が多い。
JOI本選、100+100+25+5+14=244 でした〜〜〜
— ひゅ〜Men (@men_cotton) 2020年2月9日
3完が無限人いて怖すぎる…
昼食中も人々の点数を観測していたが、本当にやけに3完が多い。そしてyuma氏のこのツイートを見て、私の自信は打ち砕かれた。なんと、この時点での投票者40人中、50%が3完以上だったのだ。
頼む🙏🙏🙏🙏🙏🙏 https://t.co/CszQlSYrGz
— ひゅ〜Men (@men_cotton) 2020年2月9日
JOI
— yuma (@yuma220284) 2020年2月9日
ひえええええ https://t.co/eeP8yJ2vGl
— ひゅ〜Men (@men_cotton) 2020年2月9日
昼食を終え、解説を聞く。3問目のACコードは、なんと小課題2と3の考察を合わせることで出来ると解説された。そんな発想は全く無かったので、たまげた。
3問目、添字と値を入れ替えるテクは実は小課題2でやってたのか うくうくうくうくうく
— ひゅ〜Men (@men_cotton) 2020年2月9日
小課題2と小課題3を解けていれば、これを融合させれば良いことに気付きます。
— ひゅ〜Men (@men_cotton) 2020年2月9日
↑
気が付きませんでした…
そして得点分布が開示される。やはり異常に多かった。
CのAC、23人いるってマジ????? 破滅確定
— ひゅ〜Men (@men_cotton) 2020年2月9日
いやぁ…
— ひゅ〜Men (@men_cotton) 2020年2月9日
本選厳しいなぁ………
悲しくなり、square1001と一緒に高速バスで帰る。安いわりに割と速く着いたので、アド。
高速バスにて、東京駅に到着… pic.twitter.com/FuFCJrvhOb
— ひゅ〜Men (@men_cotton) 2020年2月9日
東京駅で発見した画像と、江戸村で発見した画像です。 pic.twitter.com/RnZR80r9BA
— ひゅ〜Men (@men_cotton) 2020年2月9日
音ゲー勢とエンカするが、言及されていた通り無限人いたので撤退し、再びグルコス。
まだ音ゲー勢結構いますか
— ひゅ〜Men (@men_cotton) 2020年2月9日
音ゲー勢とエンカ
— ひゅ〜Men (@men_cotton) 2020年2月9日
あんだけ音ゲーあるのに肝心のグルコスが無いので撤退します…
— ひゅ〜Men (@men_cotton) 2020年2月9日
皆さんとは仲良くやってください〜〜〜
今日はありがとうございました〜🙇♂️🙇♂️🙇♂️
かなり暗くなり怖くなったので、1クレだけやり撤収。帰り際に見知らぬ人に声を掛けられ、微妙に怖くなる。適当にツイートをしながら、帰路へ。
落選達成おめでとう
— ひゅ〜Men (@men_cotton) 2020年2月9日
来年目指し頑張りましょう
次まで時は短いです
私もここで驚きました
また傍らで見ていたが
春合宿erも頑張ってます
努力を惜しまず精進す
挑戦者こそ合宿へ
一緒に戦う私も
合宿行けると信じています
これからもなおお互いに
力を磨き頑張りましょう
🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉
#黄コーダーの奇行だー https://t.co/h92LAXbdNx pic.twitter.com/uR3h2UQr8E
— ひゅ〜Men (@men_cotton) 2020年2月9日
原因はおそらくE869120さんです。
— ひゅ〜Men (@men_cotton) 2020年2月9日
や、244には満足ですが、本戦落ちは不満足なので…
— ひゅ〜Men (@men_cotton) 2020年2月9日
コトーン
— ひゅ〜Men (@men_cotton) 2020年2月9日
ツイッターをしていたらkaage氏に煽られたので、仕返しにねぎしに行く。
🖕
— ひゅ〜Men (@men_cotton) 2020年2月9日
いや、本選落ちがほぼ確定した状態で食べる夕飯はおいしいな!!!!! pic.twitter.com/2hdq1NniI6
— ひゅ〜Men (@men_cotton) 2020年2月9日
ちなみに、毎回疑問に思っていた「とろろの食べ方」を、食後にヴァネロピ氏*4に伺うと、このように返ってきた。
ところで、ねぎしのとろろってどう食べるのが良いのですか?@vane11ope
— ひゅ〜Men (@men_cotton) 2020年2月9日
醤油😭
— ひゅ〜Men (@men_cotton) 2020年2月9日
思いもよらなかった…😭😭😭
初心者………😭😭😭😭😭
— ひゅ〜Men (@men_cotton) 2020年2月9日
食後ツイッターを開くと、このようなツイートを発見。
#本選落ち黄コーダー三銃士 ですか?
— 破滅* (@Rho4913) 2020年2月9日
#本選落ち黄コーダー三銃士 pic.twitter.com/vV17XHb7SZ
— 破滅* (@Rho4913) 2020年2月9日
折角なので、画像を作ってみた。
疲れていたため、帰宅後はすぐに就寝。
Day3
ボーダーは301となり、本選落ちが確定。square1001が銅賞であることも確定。
えっ本選Aランク出てるじゃん pic.twitter.com/yVHQbrXCyo
— harady@JOI春! (@harady_a_human) 2020年2月10日
第19回日本情報オリンピック本選にご参加いただき,
— ひゅ〜Men (@men_cotton) 2020年2月10日
ありがとうございました.
採点結果をお知らせします.
B ランク (244点)
本選競技終了後に配布された暫定得点成績表からの変更はありません.
@square10011 銅賞達成おめでとう
— ひゅ〜Men (@men_cotton) 2020年2月10日
IOI目指して頑張りましょう https://t.co/rCHX7MbNF7
春合宿、寡占が酷い…
— ひゅ〜Men (@men_cotton) 2020年2月10日
:(
あぁ…😭😭😭😭😭 https://t.co/d4EGOyYvF3
— ひゅ〜Men (@men_cotton) 2020年2月10日
総括
244点で十分通ったと考えていたために、春合宿に行けないのはただただ自分の精進不足だと感じました。昨年にくらべ今年のボーダーは異常に上がったので、来年のボーダーはさらに厳しくなることが予測されますが、それにも負けないぐらい精進し、次こそは通りたいと思います。