249352026-02-16 23:13:26999Sípálya (55 pont)cpp17Időlimit túllépés 21/55500ms2036 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")


signed main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(NULL);
    int n,x;cin>>n>>x;
    vector<int> v(n);
    for(int i = 0;i<n;i++){
        cin>>v[i];
    }
    int mn=1e15;
    for(int i = 0;i<=n-x;i++){
        int cost=0;
        int currh=v[i];
        //cout<<i<<':'<<endl;
        for(int j = i+1;j<i+x;j++){
            if(v[j]==currh-1){
                currh--;
            }
            else if(v[j]<currh-1){
                currh--;
                cost+=currh-v[j];
            }
            else{
                int diff=v[j]-(currh-1);
                cost+=diff*(j-i);
                currh=v[j];
            }
            //cout<<j<<' '<<cost<<endl;
        }
        mn=min(mn,cost);
    }
    cout<<mn<<endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base21/55
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva1/18ms496 KiB
9Elfogadva1/110ms500 KiB
10Elfogadva1/112ms316 KiB
11Elfogadva1/114ms556 KiB
12Elfogadva1/114ms504 KiB
13Elfogadva1/135ms500 KiB
14Elfogadva2/239ms508 KiB
15Elfogadva2/214ms528 KiB
16Időlimit túllépés0/2500ms1844 KiB
17Időlimit túllépés0/2499ms1844 KiB
18Időlimit túllépés0/2500ms1844 KiB
19Időlimit túllépés0/3499ms1888 KiB
20Időlimit túllépés0/2481ms1844 KiB
21Időlimit túllépés0/2499ms1844 KiB
22Időlimit túllépés0/2500ms2004 KiB
23Időlimit túllépés0/2500ms1844 KiB
24Időlimit túllépés0/2485ms2036 KiB
25Időlimit túllépés0/2499ms1844 KiB
26Időlimit túllépés0/2500ms1844 KiB
27Időlimit túllépés0/2499ms1988 KiB
28Időlimit túllépés0/3476ms1844 KiB
29Időlimit túllépés0/3500ms1844 KiB
30Időlimit túllépés0/3500ms1848 KiB