ICPCアジア地区つくば大会2017 A問題 : Secret of Chocolate Poles

問題. Secret of Chocolate Poles

厚さが1cmの白と黒の薄いチョコレートと,厚さが  k cmの黒の厚いチョコレートの3種類がある.高さ  l cm 以内で黒色と白色が交互に配置されるチョコレートの積み重ね方が何通りあるか求めよ.ただし,一番下と一番上の色は黒とする.

制約 1 \le l \le 200,  2 \le k \le 10

解法. 動的計画法

高さがちょうど  h cmとなるチョコレートの積み重ね方の数を  P_h とする.このとき,各  i \,(1 \le i \le l) に対して,  P_i = P_{i - 2} + P_{i - k - 1} となる.ただし, i \le 0 のとき  P_i = 0 P_1 = 1 k \le l のとき  P_k = 1 とする.後は,この漸化式を計算して  \sum_{i =1}^{l} P_i を答えとする.

計算時間 O(l)

まとめ

 l < k となるケースを見逃していた.