mini notes

競技プログラミングの解法メモを残していきます。

Codeforces Round #627 (Div. 3) E. Sleeping Schedule

問題:Problem - E - Codeforces

解答:Submission #73178165 - Codeforces

解法:dp[i][j]をi回目の睡眠で睡眠開始がjであるときのgood睡眠の最大値とする。

このときi回目で睡眠開始がj であるとき、i+1回目の睡眠開始はj + a[i]もしくはj + a[i] - 1なので、これがgood睡眠の範囲であるかどうかでdpに加算を行う。(いわゆる配るdp)