248212026-02-15 21:07:10999Virágos rét (50 pont)cpp17Accepted 50/50100ms2872 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main() {
    int n,k;cin>>n>>k;
    vector<int> v(n+1),dp(n+1),hany(n+1);
    for(int i = 1;i<=n;i++){
        int a;cin>>a;
        v[i]=a+v[i-1];
    }
    for(int i = k;i<=n;i++){
        dp[i]=dp[i-1]+(v[i]>v[i-1]?max(0LL,v[i-k+1]-(k-v[i]+v[i-k+1])+1):0);
        cerr<<dp[i]<<' ';
    }
    cout<<dp[n]<<endl;
}
//i.nel: i-k+1 tol kezdodhet, tehat v[i]-v[i-k+1] darab van ahol nem kezdodhet, de mindenkepp benne vannak, ehez meg kell k- ennyi 
//ha v:0 1 2 2 2 2 3 akkor a 7.-nel ugye k=3 tehat v[7]-v[5] darab mar megvan, ez 1 kell meg 2,v[i-k+1] darab -2+1 lehet az eleje
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/01ms316 KiB
3Accepted0/093ms2612 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted3/31ms316 KiB
8Accepted3/31ms316 KiB
9Accepted3/31ms316 KiB
10Accepted2/21ms316 KiB
11Accepted3/32ms508 KiB
12Accepted2/22ms316 KiB
13Accepted3/32ms316 KiB
14Accepted2/218ms2628 KiB
15Accepted2/296ms2664 KiB
16Accepted3/389ms2696 KiB
17Accepted3/385ms2632 KiB
18Accepted3/398ms2612 KiB
19Accepted3/397ms2768 KiB
20Accepted3/339ms2612 KiB
21Accepted3/3100ms2872 KiB
22Accepted3/3100ms2764 KiB