くるのプログラミング記録

プログラミングの感想とか解説とか。

ABC過去問を全部解きました。[後編]

くる(ningenMe - AtCoder)です。
Atcoder Beginner Contest(001-098)の過去問を全部解きました。
D問題の感想と点数(主観)を書いていきたいと思います。
AとBとCはこちら。
ningenme.hatenablog.com


以下ものすごくネタバレを含んだ感想。



感雨時刻の整理(300)
https://beta.atcoder.jp/contests/abc001/tasks/abc001_4
1次元imos。てか感雨って何?

派閥(400)
https://beta.atcoder.jp/contests/abc002/tasks/abc002_4
実装考えたら400かなあと。

atcoder社の冬(450)
https://beta.atcoder.jp/contests/abc003/tasks/abc003_4
包除だから500かなとも思うけど愚直でも解ける。

マーブル(400)
https://beta.atcoder.jp/contests/abc004/tasks/abc004_4
難しかったけど解ける人は解けるな、と。

おいしいたこ焼の焼き方(450)
https://beta.atcoder.jp/contests/abc005/tasks/abc005_4
400なんだけど典型2個だから450。

トランプ挿入ソート(400)
https://beta.atcoder.jp/contests/abc006/tasks/abc006_4
難しいけど典型なので。ABC唯一のLIS。唯一は嘘でした。

禁止された数字(400)
https://beta.atcoder.jp/contests/abc007/tasks/abc007_4
桁dp知らないけど愚直で解けたので。

金塊ゲーム(750)
https://beta.atcoder.jp/contests/abc008/tasks/abc008_4
発想も実装も厳しい。800でもいい。

漸化式(500)
https://beta.atcoder.jp/contests/abc009/tasks/abc009_4
典型だけどDの典型ではないので。唯一の行列累乗。

浮気予防(600)
https://beta.atcoder.jp/contests/abc010/tasks/abc010_4
これも典型だけどね。唯一のフロー。

大ジャンプ(500)
https://beta.atcoder.jp/contests/abc011/tasks/abc011_4
解けそうで解けない。

バスと避けられない運命(400)
https://beta.atcoder.jp/contests/abc012/tasks/abc012_4


阿弥陀(500)
https://beta.atcoder.jp/contests/abc013/tasks/abc013_4
本質より1回のあみだをO(N)で解く方が難しく感じた。

閉路(600)
https://beta.atcoder.jp/contests/abc014/tasks/abc014_4
典型。唯一のLCA

高橋君の苦悩(400)
https://beta.atcoder.jp/contests/abc015/tasks/abc015_4


一刀両断(400)
https://beta.atcoder.jp/contests/abc016/tasks/abc016_4
線形交差判定って典型なんですかね。

サプリメント(700)
https://beta.atcoder.jp/contests/abc017/tasks/abc017_4
無理。dp。しゃくとりィ。

バレンタインデー(450)
https://beta.atcoder.jp/contests/abc018/tasks/abc018_4
実装を加味して450。

高橋君と木の直径(450)
https://beta.atcoder.jp/contests/abc019/tasks/abc019_4
インタラクティブ

LCM Rush(800)
https://beta.atcoder.jp/contests/abc020/tasks/abc020_d
数学。

多重ループ(400)
https://beta.atcoder.jp/contests/abc021/tasks/abc021_d
高校数学。

Big Bang(400)
https://beta.atcoder.jp/contests/abc022/tasks/abc022_d


射撃王(400)
https://beta.atcoder.jp/contests/abc023/tasks/abc023_d
400だとは思うけど苦手。

動的計画法(500)
https://beta.atcoder.jp/contests/abc024/tasks/abc024_d
数学。

25個の整数(700)
https://beta.atcoder.jp/contests/abc025/tasks/abc025_d
入力が全部0なら600。

高橋君ボール1号(400)
https://beta.atcoder.jp/contests/abc026/tasks/abc026_d
400だけど解けなかったよね。

ロボット(500)
https://beta.atcoder.jp/contests/abc027/tasks/abc027_d
難しいけど解けないといけない。

乱数生成(400)
https://beta.atcoder.jp/contests/abc028/tasks/abc028_d

1(400)
https://beta.atcoder.jp/contests/abc029/tasks/abc029_d
愚直。

へんてこ辞書(450)
https://beta.atcoder.jp/contests/abc030/tasks/abc030_d
余りの取り方勉強になる。

語呂合わせ(600)
https://beta.atcoder.jp/contests/abc031/tasks/abc031_d
AGCっぽい。

ナップサック問題(550)
https://beta.atcoder.jp/contests/abc032/tasks/abc032_d
実装がアレなのでコンテストでは嫌だな。

三角形の分類(500)
https://beta.atcoder.jp/contests/abc033/tasks/abc033_d
難しい。

食塩水(500)
https://beta.atcoder.jp/contests/abc034/tasks/abc034_d


トレジャーハント(500)
https://beta.atcoder.jp/contests/abc035/tasks/abc035_d


塗り絵(450)
https://beta.atcoder.jp/contests/abc036/tasks/abc036_d
唯一の木dp。

経路(400)
https://beta.atcoder.jp/contests/abc037/tasks/abc037_d
Dっぽい。

プレゼント(500)
https://beta.atcoder.jp/contests/abc038/tasks/abc038_d
BIT難しいね。LISでも解けます。

画像処理高橋君(400)
https://beta.atcoder.jp/contests/abc039/tasks/abc039_d


道路の老朽化対策について(600)
https://beta.atcoder.jp/contests/abc040/tasks/abc040_d
解けそうで解けないし難しい。

徒競走(700)
https://beta.atcoder.jp/contests/abc041/tasks/abc041_d
解けなさそうだし解けないし難しい。

いろはちゃんとマス目(400)
https://beta.atcoder.jp/contests/abc042/tasks/arc058_b


アンバランス(400)
https://beta.atcoder.jp/contests/abc043/tasks/arc059_b


桁和(500)
https://beta.atcoder.jp/contests/abc044/tasks/arc060_b
賢い。

すぬけ君の塗り絵(400)
https://beta.atcoder.jp/contests/abc045/tasks/arc061_b


AtCoDeerくんと変なじゃんけん(350)
https://beta.atcoder.jp/contests/abc046/tasks/arc062_b
300は低すぎ。

高橋君と見えざる手(400)
https://beta.atcoder.jp/contests/abc047/tasks/arc063_b


An Ordinary Game(500)
https://beta.atcoder.jp/contests/abc048/tasks/arc064_b
ゲームは悪。

連結(450)
https://beta.atcoder.jp/contests/abc049/tasks/arc065_b
最後の数え上げ難しくない?

Xor Sum(700)
https://beta.atcoder.jp/contests/abc050/tasks/arc066_b
最初解説すら読めなかったよね。

Candidates of No Shortest Paths(400)
https://beta.atcoder.jp/contests/abc051/tasks/abc051_d
問題そのものが本当に典型。

Walk and Teleport(300)
https://beta.atcoder.jp/contests/abc052/tasks/arc067_b
500の顔すんなお前!!!

Card Eater(400)
https://beta.atcoder.jp/contests/abc053/tasks/arc068_b


Mixing Experiment(450)
https://beta.atcoder.jp/contests/abc054/tasks/abc054_d
難しい。

Menagerie(450)
https://beta.atcoder.jp/contests/abc055/tasks/arc069_b
難しくない。

No Need(600)
https://beta.atcoder.jp/contests/abc056/tasks/arc070_b
D問題の気持ちにならないとね。

Maximum Average Sets(400)
https://beta.atcoder.jp/contests/abc057/tasks/abc057_d
400なんだけど……確かに400なんだけど……。

井井井 (500)
https://beta.atcoder.jp/contests/abc058/tasks/arc071_b
数学。

Alice&Brown(500)
https://beta.atcoder.jp/contests/abc059/tasks/arc072_b
だからゲームは良くないんだって。

Simple Knapsack(400)
https://beta.atcoder.jp/contests/abc060/tasks/arc073_b
初めて解いたD問題。

Score Attack(400)
https://beta.atcoder.jp/contests/abc061/tasks/abc061_d
唯一のベルマンフォード。

3N Numbers(500)
https://beta.atcoder.jp/contests/abc062/tasks/arc074_b


Widespread(400)
https://beta.atcoder.jp/contests/abc063/tasks/arc075_b
解けないといけないんだけど苦手。

Insertion(400)
https://beta.atcoder.jp/contests/abc064/tasks/abc064_d


Built?(500)
https://beta.atcoder.jp/contests/abc065/tasks/arc076_b
唯一の最小全域木

11(500)
https://beta.atcoder.jp/contests/abc066/tasks/arc077_b
AGC感。

Fennec VS. Snuke(400)
https://beta.atcoder.jp/contests/abc067/tasks/arc078_b
400だけど解けるけど難しくない?

Decrease (Contestant ver.)(600)
https://beta.atcoder.jp/contests/abc068/tasks/arc079_b
こういうのが構築?難しい。

Grid Coloring(400)
https://beta.atcoder.jp/contests/abc069/tasks/arc080_b


Transit Tree Path(400)
https://beta.atcoder.jp/contests/abc070/tasks/abc070_d
水色の今なら文章そのままだなって感じるね。

Coloring Dominoes(400)
https://beta.atcoder.jp/contests/abc071/tasks/arc081_b
最近のDらしい難易度になってきたね。

Derangement(400)
https://beta.atcoder.jp/contests/abc072/tasks/arc082_b


joisino's travel(400)
https://beta.atcoder.jp/contests/abc073/tasks/abc073_d
やるだけ。

Restoring Road Network(400)
https://beta.atcoder.jp/contests/abc074/tasks/arc083_b
日本語が難しい。

Axis-Parallel Rectangle(400)
https://beta.atcoder.jp/contests/abc075/tasks/abc075_d
400なんだけどな~お前な~。

AtCoder Express(500)
https://beta.atcoder.jp/contests/abc076/tasks/abc076_d
君は500点だよ!初めてのABCだったのでよく覚えてる。

Small Multiple(750)
https://beta.atcoder.jp/contests/abc077/tasks/arc084_b
ABCも天才以外お断り。

ABS(400)
https://beta.atcoder.jp/contests/abc078/tasks/arc085_b
ゲームは嫌いですが解けたのでこれは好き!!!

Wall(400)
https://beta.atcoder.jp/contests/abc079/tasks/abc079_d
灰色当時何もできなかった。

Recording(400)
https://beta.atcoder.jp/contests/abc080/tasks/abc080_d


Non-decreasing(500)
https://beta.atcoder.jp/contests/abc081/tasks/arc086_b
コンテスト中ではないけど自力600はこれが初めて。

FT Robot(500)
https://beta.atcoder.jp/contests/abc082/tasks/arc087_b
シミュレーションしたくなるよね。

Wide Flip(500)
https://beta.atcoder.jp/contests/abc083/tasks/arc088_b
こういうの一生解ける気しない。

2017-like Number(400)
https://beta.atcoder.jp/contests/abc084/tasks/abc084_d


Katana Thrower(350)
https://beta.atcoder.jp/contests/abc085/tasks/abc085_d
お前は400点じゃない!!!初めてコンテスト中に通せたD問題。

Checker(500)
https://beta.atcoder.jp/contests/abc086/tasks/arc089_b
実装が大変。

People on a Line(450)
https://beta.atcoder.jp/contests/abc087/tasks/arc090_b
500ない?400じゃないでしょ?難しくない?

Grid Repainting(400)
https://beta.atcoder.jp/contests/abc088/tasks/abc088_d


Practical Skill Test(400)
https://beta.atcoder.jp/contests/abc089/tasks/abc089_d


Remainder Reminder(400)
https://beta.atcoder.jp/contests/abc090/tasks/arc091_b
D問題らしいのが並ぶね。

Two Sequences(500)
https://beta.atcoder.jp/contests/abc091/tasks/arc092_b
制約からエスパーするとなんとなく解法が絞れるけどそれでも難しい、けど典型ではある。

Grid Components(500)
https://beta.atcoder.jp/contests/abc092/tasks/arc093_b
田植え。初めてコンテストで通した500。AGCっぽいなあ。

Worst Case(700)
https://beta.atcoder.jp/contests/abc093/tasks/arc094_b
これめちゃめちゃ難しい。この発想マジでどこから出てくるの?

Binomial Coefficients(400)
https://beta.atcoder.jp/contests/abc094/tasks/arc095_b
エスパーをします。

Static Sushi(500)
https://beta.atcoder.jp/contests/abc095/tasks/arc096_b
これは難しいけど解けないといけない問題。

Five, Five Everywhere(400)
https://beta.atcoder.jp/contests/abc096/tasks/abc096_d

Equals(400)
https://beta.atcoder.jp/contests/abc097/tasks/arc097_b


Xor Sum 2(500)
https://beta.atcoder.jp/contests/abc098/tasks/arc098_b
実装が大変に感じる。xorの単位元とか逆元の知識とか持ち合わせてないよ。



はい。長い。約100問。誰がここまで読むんだ?

点数に関して考えてみましたが設定されているもので概ね納得ですねー。
難しいのに点数低い問題は殆ど典型だからそういうのは出会えてラッキーという感じで。
知ってる典型で解けないと泣きたくなるけどね。

LCM Rush、金塊ゲーム、Small Multiple、Xor Sum、徒競走、25個の整数、サプリメント、Worst Case、道路の老朽化対策について、浮気予防。
ABCの難易度ランキングだとこんな感じですね。

D問題は解説ないと困る問題が多い、難しい。
ABCの問題だけでも割と色んなアルゴリズム学べますね。

E問題からは大変なので(既に挫けた)当分はARC-A,BとAGC-A,Bを解きます(現実逃避)
楽しくatcoder続けていきたいね。レートも少しずつ上げたいね。

はやく青になりたーい。