2021/11/7に開催されたAtCoder Beginner Contest 226に参加しました。
ここ最近のABCコンテストでは緑パフォが安定して取れており、レートの推移もなんとか上昇トレンドとなっているところですが、まだ一度事故ったら茶落ちしかねない状況でもあります。
今回もなんとか4完は達成して、緑は維持できるような結果がでるようにという気持ちで臨むことにしました。
参加します。とりあえず4完は目指したいところ。
— devgenjin77 (@devgenjin77) 2021年11月7日
AtCoder Beginner Contest 226 - AtCoder https://t.co/i2ovJZfx55
今回の結果
で、今回もなんとか4完を確保できましたとさ。有言実行といったところです。
で、今回は早めのタイムが出たのが良かったのか、久しぶりの4桁パフォ。
水色パフォまでは出せませんでしたが、レートの方は気持ち大き目の上昇幅となりました。
4完で久しぶりの4桁パフォでレート上昇しました😂
— devgenjin77 (@devgenjin77) 2021年11月7日
次も頑張ります✊
devgenjin77さんのAtCoder Beginner Contest 226での成績:1738位
パフォーマンス:1116相当
レーティング:829→861 (+32) :)#AtCoder #ABC226 https://t.co/CXSUy59b9O
振り返り
A、Bがいつもより難しめ。Eはあとちょっとというところで解ききることができませんでした。
A問題
入力された実数を小数第一位で四捨五入した結果を求めよという問題。
一見して、入力をBigDecimalで受けて、round関数の結果を出せばいいんじゃねと思う所だが、ライブラリを使ったroundの計算結果は、この問題でいうところの四捨五入と微妙に異なるところがあるとかないとか、原点に近い方に丸められるとか違うとかなどのうろ覚えの知識に基づき、ライブラリに頼ると罠に嵌まりそうという考えが頭をよぎりました。
よって、小数第一位の数字を取得し、5以上だったら整数部に1を足すという愚直な実装をすることに。
多少時間はかかりましたが、無事にACを取ることが出来ましたとさ。
提出コード
https://atcoder.jp/contests/abc226/submissions/27080729
B問題
前回に引き続き、今回のB問題も少し難しめの問題かという印象。
まともに入力の配列の要素を一つづつ検査していたらTLEになりそうな制約でしたが、1行分の配列データの入力をそのまま文字列としてSet
こちらも問題なくAC。
提出コード
https://atcoder.jp/contests/abc226/submissions/27084656
C問題
技を習得するために最低限必要な技の習得時間の合計を求めればよい。ということで、以下のような処理を実装することでACが取れました。
番目のスキルを習得済みとし、習得するための時間を答えに足す
番目のスキルを習得するために必要な技の番号全てをキューに入れる。
- キューから技の番号を取得する。取得した番号のスキルを習得済みとし、習得するための時間を答えに足す。
- 上記のスキルを習得するために必要な技のうち、習得済みでない技の番号全てをキューに入れる。
- キューが空になるまで、3,4を繰り返す。
提出コード
https://atcoder.jp/contests/abc226/submissions/27094195
D問題
全ての点について、2点間の傾きをそれぞれ求め、同じ傾きのものは除外したカウントを求めることで答えとなりそう。
で、位置は異なるが同じ傾きである場合を検出するには、2点間の座標の差と
座標の差をGCDで割れば良いかと。
ということで、あとは実装してACが取れましたとさ。
提出コード
https://atcoder.jp/contests/abc226/submissions/27101652
E問題
残り40分程度の時間があったので、頑張れば5完いけるかという気持ちで臨んだE問題。
問題をよくよく読むと、グラフの各連結成分でサイクルが構成されていることを確認し、最終的には2のサイクルの個数乗が答えになるのかなー?といった感じ。
と、ここまではたどり着いたのですが、いざ実装に取り掛かってみた時、答えが0になるケース、要は連結成分でサイクルが構成されない条件が具体的に何なのかがわからず仕舞いで、結局サンプルが通る程度の実装までたどり着けずでした。
こういうグラフ系の問題には、まだまだ慣れていない状態なので、もっと上を目指すにはやはりグラフ問題も重点的に対策すべきだなーと痛感する次第です。
F問題
問題をチラ見しましたが、小難しそうな数式が並んでおり、チンプンカンプンでした。。
G問題
問題すらみれておりません。
H問題
問題すらみれておりません。
これまでの実績
上昇トレンド継続中。とりあえず一発で茶落ちするようなことはなさそうな位置までは来ましたが、まだ油断禁物といったところです。
総括
今回、4完で緑パフォ上位が取れたものの、E問題まで取れたら水色パフォとれたかなーというところ。
このまま緑パフォを取り続けても頭打ちになるだけなので、今後のABCでは水色パフォが安定して取れることを目標として、精進を継続していきたいと思います。
ということで、また次回も頑張ります。