https://atcoder.jp/contests/abc423/tasks/abc423_a
あなたは銀行からお金を $1000$ 円単位で引き落とせます。しかし $1000$ 円引き下ろすごとに手数料 $C$ 円かかります。銀行の残高が $X$ 円ある場合、あなたは最大で何円引き落とせますか。
$1000$ 円引き落とすごとに $C$ 円の手数料がかかるのでこの2つの金額をセットにして考える。
最大で引き下ろせる金額は $k(1000+C) \{ k \in \mathbb N \}$ になる。この $k$ は $\lfloor \frac{X}{1000+C} \rfloor$ になる。
$k$ 回 $1000$ 円引き下ろせるので答えは $1000k$ となる。
制約より while などで愚直にシミュレーションしてもTLは余裕で間に合う。最大ステップ回数は $10^{7-3}$ 回比例になる。
https://atcoder.jp/contests/abc423/submissions/69299049
https://atcoder.jp/contests/abc423/tasks/abc423_b
$N+1$ 個の部屋があります。それぞれ $i$ と $i+1$ の部屋の間にはドアがあり、鍵がしまっているかどうかの情報が与えられます。Aくんは $0$ の部屋から、Bくんは $N$ の部屋から鍵が空いているときかつ、そのときに限り部屋を移動することができます。2人のいずれも到達できない部屋の数を答えなさい。
愚直にシミュレーションするのがよい。