[競プロ] コンテスト結果記録

2020-06-22に作成

coding image

競プロコンテストの結果をひたすら書いていくボード

所有者限定モードのためこのボードには投稿できません ボードとは?

[競プロ] AtCoder Grand Contest 047 結果

AtCoder Grand Contest 047

難易度

A B C D E F
1348 1861 2578 2937 3101 4612

結果

  • 正答: 0完 ※太陽って何だ JOI用語?
  • Rank: 987th / 1978
  • Perf: -
    agc047

成果

  • なし
  • ※ショートコード特別賞(後述)

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

2時間かけて1問も解けず
とはいえそれを悔しいなどと言えるレベルでもなし

水diffのA問題(300点)だけなんとか自力AC
(周知の事だが、配点は難易度の基準ではない)
計算量を過大に見積もって無理な高速化に挑んだ挙句、手に負えなくなって撤退
単純な実装に立ち戻って速度を評価したところ、全然間に合ってしまい脱力するなど

ただこの単純な実装というのが結構なショートコードだったようで、その時点での最短1位を獲得した
そしてこれを短縮した改訂版が、コードゴルフ上級者の改変元(たたき台)として採用されたようだ
十分に無駄のない品質と評価されたことはとても嬉しい
だがそれ以上に、自分のコードを元を修正してくれるので、ゴルフの添削となっていて大変ありがたい
参考になる書き方があったり、詰めが甘い部分が見えたりして実に勉強になる

  • -i-1 == ~i
     つい忘れがちだけど、積極的に使っていきたい

  • 標準入力っぽいの($<, ARGF)はEnumerable
     grep, map, sumなどを使って行単位処理できる

  • 配列のi番目以降が欲しいときの書き方
     1. Ary[i...Ary.size]
     2. Ary[i..-1]
     3. Ary[i,MAX]
     4. Ary[i..]

Rangeの終端を省略した4番は目から鱗だった
(0..).each みたいなのが書ける時点で気付くべきだったかもしれない

[競プロ] AtCoder Beginner Contest 174 結果

AtCoder Beginner Contest 174

難易度

A B C D E F
0000 0016 0877 0411 1158 1575

結果

  • 正答: A-B 2完
  • Rank: 6243rd / 9809
  • Perf: 414
    abc174

成果

  • B: 4th shortest code

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

爆死回
わかっていたことだが、B,Cあたりで引っかかって、かつD,Eでリカバリできないと大爆死する
今回はCで頭を抱えていた折に仕事の連絡が入り10分程ロスした
だが時間以上に集中力と熱意を削がれてしまい、Cを飛ばすか否かで判断を誤ってそのまま終了

結局Cは11分超過でAC
電話で水を差されなければあるいは間に合ったやも……

難易度評価の通り、後続のDの方が簡単で、こちらは30分弱
比較するとお世辞にも褒められた速さではないが、まぁ一応解けはする
さっさとCに見切りをつけてDをやれば……4,50分くらいで3完、そんでPerf700くらいだったかもね

E問題、結構考えたが疲れた頭ではどうにもならず
「二分探」、「Pairs」のキーワードを拾ってから再挑戦したら、さっくり解けた
これは制約が10^9なところでピンと来なくちゃね

解いてみれば割と単純どころか、回答が僅か2行なんですけど……
現時点でも2nd shortestってどゆこと?
そんな風に解けるくらいなら、もう少しスコア伸びたってよさそうなものだがなー

それと今回、F問題の難易度がすごく低いみたいだ
F問初攻略目指してやってみるかな?

[競プロ] M-SOLUTIONS プロコンオープン 2020 結果

M-SOLUTIONS プロコンオープン 2020

難易度

A B C D E F
---- 0022 0135 0604 2306 2004

結果

成果

  • B: 3rd shortest code
  • B: fastest exec time
  • C: 3rd shortest code

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

今回もさらに遅くなってA,Bで13分超え、もしや精進しまくらないと5分切れないんじゃないか
そのペースからするとCはまだ頑張ったほうか

しかしDに45分というのも失敗した
問題文に惑わされ、購入数別のDPが必要になるのかとしばらく悩んでしまった
最初から全振りの売買でよいと気づけば20分で解けたはず
それならパフォ1100くらいいけたなぁ
毎度のことながら惜しい……

[競プロ] AtCoder エイシング プロコン 2020 結果

エイシング プログラミング コンテスト 2020

難易度

A B C D E F
0000 0003 0293 1294 2128 2825

結果

  • 正答: A-C 3完
  • Rank: 3489th / 7402
  • Perf: 766

成果

  • A: 3rd shortest code
  • B: 5th shortest code

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

A,Bで10分超も遅すぎだが、このCに25分がダメダメ
たかだか[1..99]の3重ループ、愚直に書いて10行程度、10分もあれば済んだはず
ちょっと色気を出して組み合わせ計算で高速化しようとか、要らんことをするものではないな
もしサッサと出していればパフォ1000か……もったいない

Dはメモ化再帰と初回popcount定数化までやったが届かず
popcountが遅いのか思ったが、そうではなく初回Xn数列生成でTLEしていた
それを確かめるのに後段の再起を削った回答を出して処理時間を見たのだけど、果たしてコンテスト中だったらWA前提の捨て回答を出す勇気があっただろうか?
時間内に解けないとなればなりふり構わないが、まだ余裕がある時に、どの時点で試しに行くかは難しそうだな

ところで巷の呟きで見たpowでmodを取る方法も十分に高速なようだ
わざわざバイナリ法みたいなのを実装しなくてもよさそう

[競プロ] AtCoder Beginner Contest 173 結果

AtCoder Beginner Contest 173

難易度

A B C D E F
0000 0005 0600 0673 1673 1806

結果

  • 正答: A-B 2完 (WA1)
  • Rank: 8769th
  • Perf: 146

成果

  • B: 4th shortest code

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

 まさかのワースト、レート下落幅記録更新
 ちょっと酷すぎて草も生えないぞ
 Eまでどれも解ける技能はあるのに、つまらない勘違いやら何やらで何もかも落とす
 ショックのあまり一晩寝込んだ

  • A - Payment
     千円札で支払ったお釣りを求める問題に、何を勘違いしたか硬貨の枚数を回答してしまう
     今日のA問題はやけに難しいとか言い出すアホ

  • B - Judge Status Summary
     やるだけ、遅すぎ

  • C - Judge Status Summary
     ははん、全探索ね、combinationに丸投げしよっ……サンプル通らず
     bit全探索程度、概要を聞いただけで完全に理解したわ、という過信が崩れ去る
     なぜうまくいかないのかわからないまま時間を溶かし、諦めて次へ
     ちなみに何が悪かったかというと入力値01の取り違えで、これを10に改めるだけで解決
     bitmask自前実装に切り替えて入力値の扱いを反転させるまで、全く気付かず

  • D - Chat in a Circle
     やった、これ超カンタン、と自信満々で出したらWA
     ここまでミスしまくりということもあり、完全に自信喪失してしまう
     ちゃんと紙に書き出してみれば数分で気づくような誤りだった

  • E - Multiplication 4
     問題文3行! これも簡単そう!! もうこっちに賭けるしか!!!
     という甘い罠に嵌って場合分け地獄を捌けず終了
     アルゴリズム的に難しいなんてことは全くないんだけどね

unratedなAGC1完を含む直近8回パフォーマンスで、上位5回の平均は1000なのに、下位3回は平均200
ちょっと極端すぎやしないか??
なんでこうしょっちゅう大爆死するんだろう

[競プロ] AtCoder Beginner Contest 172 結果

AtCoder Beginner Contest 172

難易度

A B C D E F
0000 0004 0878 0945 1878 2159

結果

  • 正答: A-C 3完
  • Rank: 3583rd
  • Perf: 875

成果

  • B: 7th shortest code (3rd in Ruby)
  • C: 2nd shortest code
  • C: 2nd fastest exec time

※コンテスト終了時順位、実行速度は同言語内のみ比較

感想

 Cまでに時間食い過ぎ
 でも他の人も苦労してたみたいで結果はまずまず
 この問題は累積和+二分探索の解法もあるという
 これは解説記事を探してみよう

 Dは正しく方針を立てたがちゃんと数式に落とし込めず
 時間をおいて、落ち着いてチャレンジしたら15分でACした
 ちゃんとパターンを書き出して考えたら解けたはず
 ついでにこの回答は現時点でもショートコード2緑パフォ4連続!! 位
だった、惜しい
 こういう取りこぼしは無くしていかないとね

 それでも緑パフォ4連継続中!! 色変まで頑張れ!!

[競プロ] AtCoder Beginner Contest 171 結果

AtCoder Beginner Contest 171

難易度

A B C D E F
0000 0005 0466 0422 0734 1721

結果

  • 正答: A-E 5完
  • Rank: 2797
  • Perf: 1038

達成

  • B: 4th shortest
  • D: 2nd shortest
  • E: 3rd shortest ※不要な空白7文字を削ったとして

感想

 令和ABCで最も簡単なE問題
 Cの方がよほど面倒くさい

 完全に早解きの回なので、上を目指すなら30分くらい縮めないとだな

 とはいえ、ここ4回の平均パフォが4桁になってついにレート更新できたのは良かった
 その直前の4回は絶不調の150,300,0完,0完で、一時は本当にもう止めようかと思ったくらい
 なんとかこのまま緑を目指したいところだね