ABC414
- E
- 読み飛ばし
- $1 \leq a,b,c \leq N$ を $0\leq a,b,c \leq N$ と勘違い
- $a,b,c$ は互いに異なるを読み飛ばしてた
- サンプルで確認をすると良かったかもしれない。
- ちゃんと読めば解決するというのは難しい。今回の $c=0$ が除かれているというのとか。
- 4%2=2 と間違い(なぜ?)
- なにかを数え上げるとき条件をすべて見ようという姿勢がない。雑に試してうまくいかないっていうのを繰り返しがち
ABC410
- C
- rem_euclid を div_euclid と間違い
ABC406
- E
(1 << i) - 1
と書いたら意図せず i32 になってしまった
- 後続の処理で ModInt を使っていたため、i64 と型推論されなかった
ABC404
- D
- 間違えて n と書くところを 10 と書いてしまった (nの上限が10なので問題はなかったが)
- E
- dp[final_pos] と書くところを dp[n-1] と書いてしまった
- G
- 考察詰める前に実装してしまった。最適化問題の場合はちゃんと最適化問題を書き下すほうが良い
- $S_{i+1} - S_{i} \geq 1$ という制約を見落としていた
- 結果として Potentialized UF という間違い方針で実装を進めてしまった。
- 差分制約系を解く時に辺の貼る向きを逆にしてしまった
- 差分制約系は通常最大化問題なのに、最小化問題として解いてしまった
ABC403
- B
- 部分文字列判定で
xs[i..i+ys.len()] == ys
と書くところを xs[i..] == ys
と書いてしまった
- D
ABC402
- D
[(usize, usize); m]
を [(usize, usize); n]
とミス
n
は n_point
, m
は n_line
って変数名にしておくほうが良かったかも
- usize で
n * (n - 1) / 2
を計算し、n = 0
でオーバーフロー
- F
- 数列 (例えば [1,2,3,4,5,6] )を逆に見ていったときの10進数化で実装グダり
- 定数倍遅くなっても配列にとって逆順にしてってやればよかった。
- 定数倍が気になる場合は実装したあとに高速化をすればよい。
- $(x_i + y_j) \operatorname{mod} m$ の最大化でグダり
ABC401