Submission #971028

#TimeUsernameProblemLanguageResultExecution timeMemory
971028RandomUserTelefoni (COCI17_telefoni)C++17
80 / 80
57 ms2132 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n, d;
    cin >> n >> d;

    int dp[n+1]; dp[1] = 0;
    multiset<int> ms; ms.insert(0);
    for(int i=1; i<=n; i++) {
        int x; cin >> x;
        if(i == 1) continue;
        dp[i] = *ms.begin() + (x ^ 1);
        ms.insert(dp[i]);
        if(i > d) ms.erase(ms.find(dp[i-d]));
    }

    cout << dp[n] << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...