219462026-01-14 11:03:04bombinigusiniSípálya (55 pont)cpp17Hibás válasz 5/5581ms1272 KiB
#include <iostream>
#include <vector>
using namespace std;
int main()
{
    int n, k;
    cin>>n>>k;
    vector<int> v(n);
    for(int i=0; i<n; i++) cin>>v[i];
    int osszeg=0, minpetak=k*k+1/2+1, maxszam=0, p;
    for(int i=0; i<k; i++)
    {
        osszeg+=v[i]+i;
        if(v[i]+i>maxszam)
        {
            p=i;
            maxszam=v[i]+i;
        };
    }
    minpetak=maxszam*k-osszeg;
    for(int i=1; i<n-k+1; i++)
    {
        maxszam--;
        if(i==p+1)
        {
            maxszam=v[i];
            for(int j=0; j<k; j++)
            {
                if(v[i+j]-k+j>=maxszam)
                {
                    p=i+j;
                    maxszam=v[i+j]+j;
                }
            }
        }
        else if(v[i+k-1]-1>=maxszam)
        {
            maxszam=v[i+k-1]-1;
            p=i+k-1;
        }
        osszeg=osszeg-v[i-1]+v[i+k-1];
        if(k*maxszam-osszeg<minpetak)minpetak=k*maxszam-osszeg;
    }
cout<<minpetak;
return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base5/55
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Hibás válasz0/21ms508 KiB
4Hibás válasz0/22ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Hibás válasz0/31ms316 KiB
8Hibás válasz0/14ms440 KiB
9Hibás válasz0/14ms316 KiB
10Hibás válasz0/14ms316 KiB
11Hibás válasz0/14ms508 KiB
12Hibás válasz0/14ms316 KiB
13Elfogadva1/14ms436 KiB
14Hibás válasz0/24ms432 KiB
15Hibás válasz0/24ms432 KiB
16Hibás válasz0/275ms1152 KiB
17Hibás válasz0/274ms1076 KiB
18Hibás válasz0/275ms1196 KiB
19Hibás válasz0/375ms1076 KiB
20Hibás válasz0/275ms1080 KiB
21Hibás válasz0/274ms1272 KiB
22Hibás válasz0/275ms1192 KiB
23Hibás válasz0/275ms1076 KiB
24Hibás válasz0/281ms1076 KiB
25Hibás válasz0/275ms1076 KiB
26Hibás válasz0/275ms1076 KiB
27Hibás válasz0/274ms1188 KiB
28Hibás válasz0/375ms1076 KiB
29Hibás válasz0/375ms1076 KiB
30Hibás válasz0/375ms1268 KiB