2022-08-17 ABC200 の A, B, C, D を解いた
京セラプログラミングコンテスト2021(ABC200 : AtCoder Beginner Contest 200)の A, B, C, D を解いた。
- A - Century
https://atcoder.jp/contests/abc200/tasks/abc200_a
- 提出: https://atcoder.jp/contests/abc200/submissions/34106746
(n - 1) / 100 + 1
- B - 200th ABC-200
https://atcoder.jp/contests/abc200/tasks/abc200_b
- 提出: https://atcoder.jp/contests/abc200/submissions/34106785
- 指示通りにシミュレート
- C - Ringo's Favorite Numbers 2
https://atcoder.jp/contests/abc200/tasks/abc200_c
- 提出: https://atcoder.jp/contests/abc200/submissions/34106901
- 一瞬戸惑うけど mod 200 で一致する組を探せば良い
- A の各要素を % 200 したあと余りごとに個数を数えて
_xC_2 = x * (x - 1) / 2
の総和を求めれば良い
- D - Happy Birthday! 2
https://atcoder.jp/contests/abc200/tasks/abc200_d
- 提出: https://atcoder.jp/contests/abc200/submissions/34108012
- めちゃくちゃバグらせた 4WA
- 以前は解けなかったことを考えると成長している
- C 同様に mod 200 にしておく
- 長さ 200 の Vec でそこに到達するのに使用した要素の添字を保持する
- B, C の短い側の数列の長さを L として 1..=L で順に↑の Vec を埋めていく
- 既に到達できていれば 2 種類の方法で到達することができているのでそれらを出力して終わり
- 解説の解法は 201 個以上の数列を生成して総和の mod 200 を計算して分類する
- 鳩の巣原理から必ず衝突するのでそれを出力すれば答えになる
- 鮮やかだ……
Firestore REST API を呼び出そうとして HTTP 403 でハマっている。
今日のコミット。