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