#include #include using namespace std; using namespace atcoder; using mint = modint998244353; int main() { int N, K; cin >> N >> K; vector dp(N + 2, 0); vector sdp(N + 2, 0); //sdp[i] := dp[0] + dp[1] + ... + dp[i - 1]; dp[0] = 1; for (int i = 1; i <= N + 1; i++) { sdp[i] += sdp[i - 1] + dp[i - 1]; if (i - K + 1 > 0) { dp[i] += sdp[i - K + 1]; } } cout << sdp[N + 1].val() << endl; }