読者です 読者をやめる 読者になる 読者になる

4bitにっき

ぽよ

【初投稿】JOI予選で人権を失う

コンテスト参加記

この記事は ICT Advent Calendar 2014 の 12/21 の記事として書かれたものです。

また語彙力のなさによって読みにくくなってしまったところがあると思います。ごめんなさい。

 

はじめまして

沖縄の皆さんはじめまして。

久留米の1年生うぃんじーです。プロラボ部で競プロやってます。"アドベントカレンダー"の意味を昨日まで知らなかった情弱です。

 

最近久留米は寒くなってきていてキーボードを打つのも一苦労です。半袖でアイスどころじゃないです。

 

 

試験終了後(12/5)からJOI予選2日前まで

プロじゃないのでさすがに試験期間中は競プロしてませんでした。

試験が終わってからは、先輩に教えてもらったDP問題(主にJOI過去問)を解きまくっていました。

この頃、某怖い人とかにハラスメントされすぎて感情を失いました。

 

JOI予選前日(非公式JOI模擬予選)

kagamizさんの模擬予選がありましたね。

1,2問目

バグに気を使いながら解きました。

3,4問目

どっちもDPで解きました。4問目のほうが実装が楽でした。

この時点で残り1時間15分くらいでした。

ミスチェック

ミスチェックで、3問目でデバッグ出力を消してないのに気づきました。危なかったです。

5問目

残りの1時間ちょっとを全部つぎ込みました。

最初に部分点狙いでDPを書いて提出しておいて、そこから満点を狙いに行きました。

素因数分解で解けそうな気がしたのですが、それを実装した後で何も思いつかず詰みました。その後組み合わせで解けそうな気がしてごにょごにょしてましたがそのままコンテストが終了しました。

結果

4完+2部分点で440でした。

僕の実装力とデバッグ力でバグが出なかったのが奇跡だったと思います。

5問目の素因数分解は惜しいと言えば惜しかったです。(約数列挙すればよかった)

今思えばここでコテンパンにやられていたほうが良かったかもしれません。

ちなみにこの後、自動でファイル出力するプログラムを作ったほうがいいと思って作りました。バッチなんちゃらとかが全然分からないのでC++で書きました。

 

JOI予選当日

コスモたそ

ほんとにこれでやりました。

1問目

最初だから慎重になりすぎていました。

あと、自動出力プログラムがちゃんと動作しているか怖かったので、1問目だけは手動で出力もして動作確認しました。

2問目

問題文の理解に少し時間がかかりました。

問題文をちゃんと読もうという教訓があったので何回も読み返しました。

3問目

ここらへんでボーダーが上がりそうな雰囲気を感じ取りました。

やるだけほどミスしやすいのでなるべく丁寧に実装しました。

4問目

ここで えさきょん@esakyohum が「紙がない」と言っていたのを思い出し、紙を献上しに行きました。実は筆記用具もなかったらしく、終わった後で筆記用具も渡していればと後悔しました。

4問目の問題文を読んだ時にボーダーが上がることを確信しました。

典型DPなので実装はそんなにつらくなかったです。と、この時は思っていました。

5問目

5問目のアルゴリズムは思っていたよりも簡単でした。実装軽めの幅でしたね。

しかしボーダーが案外上がりそうでますます危機感を感じました。

この時点で1時間15分程度余っていてデジャヴを感じました。

ミスチェック

ミスチェックをしました。デジャヴです。

チェックした結果ミスはなかったです。と、この時は思っていました。

コードと問題文を一から読み直してしっかりやったつもりだったのですが、ここでバグを発見できなかったのは力不足ですね。

6問目

時間が余っていたせいなのか、欲張ってしまいました。

つらぽよしながら満点解法を狙っていたのですが、残り5分でまともに動かないバグが出たので部分点を狙いに行きました。そしてそのまま合ってるかも分からない解答を提出しました。

結果

440

人権を失いました。

f:id:winjii:20141220142703j:plain

 

4問目のバグの原因

ミス集に書いてあっただろ(怒りマーク)

 

ちなみに僕以外でプロラボ部から3人通りました。

・幸にゃん猫先輩(2年) 

  実装力とデバッグ力が神

・ラテ君(1年) 

  僕と違って5完しきったプロ

・っこ(1年) 

  音ゲーガチ勢

 

今後の課題

全体的に能力が足りてませんが主に足を引っ張ったのは

注意力、デバッグ

だと思います。問題を解きまくって鍛えます。あと ミス集.txt を充実させます。

本番で緊張してしまうのも治したいです。これも多分コンテストに出まくるしかないですね。

 

まとめ

・人権ない

・コスモちゃん可愛い

 

本選ではオンラインジャッジシステムが使えるらしいので、今回みたいなミスは減ると思います。

あとは多少は戦えるように本選に向けて必要なアルゴリズムを勉強します。

ラテ君を連れて東京は絶対面白いので楽しみたいです。

 

 

以上、12/21のICTアドベントカレンダーでした!

今日のアドベントカレンダーの担当(僕以外):@greeeenappleさん、圧倒的美少女ちぎちゃん先輩@chigichan24

【追記】明日のアドベントカレンダー担当は@rin_neko19さんです!