248192026-02-15 21:05:31999Virágos rét (50 pont)cpp17Hibás válasz 42/50101ms1788 KiB
// Source: https://usaco.guide/general/io

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

int 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(0,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
RészfeladatÖsszpontTesztVerdiktIdőMemória
base42/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/094ms1368 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms372 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva3/31ms336 KiB
8Elfogadva3/32ms552 KiB
9Elfogadva3/32ms316 KiB
10Elfogadva2/22ms508 KiB
11Elfogadva3/32ms316 KiB
12Elfogadva2/22ms316 KiB
13Elfogadva3/32ms316 KiB
14Elfogadva2/217ms1512 KiB
15Hibás válasz0/296ms1536 KiB
16Elfogadva3/389ms1548 KiB
17Elfogadva3/386ms1720 KiB
18Hibás válasz0/3101ms1588 KiB
19Elfogadva3/397ms1596 KiB
20Elfogadva3/337ms1600 KiB
21Elfogadva3/3101ms1788 KiB
22Hibás válasz0/397ms1588 KiB