58932023-10-04 18:28:29gergomiszoriUtazásszervezés (75 pont)cpp11Elfogadva 75/756ms4316 KiB
#include <bits/stdc++.h>

using namespace std;

int tel;
int n, k, m, c;
int ind;
vector<int> igenyek;
vector<int> veg;

int main()
{
    cin >> n >> k >> m >> c;
    igenyek.resize(c);
    veg.resize(k+2);

    for(int i = 0; i < c; i++) cin >> igenyek[i];

    for(int i = 1; i < k-m+2; i++)
    {
        if(ind == igenyek.size()) break;
        n += veg[i];
        while(ind < igenyek.size() && igenyek[ind] < i) ind++;
        int tempn = n;
        for(int j = 0; j < tempn; j++)
        {
            if(igenyek[ind] == i)
            {
                ind++; tel++; n--; veg[i+m] += 1;
                if(ind == igenyek.size())
                    break;
            }
            else
                break;
        }
    }


    cout << tel;


    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base75/75
1Elfogadva0/03ms1876 KiB
2Elfogadva0/06ms2384 KiB
3Elfogadva3/33ms2288 KiB
4Elfogadva4/43ms2472 KiB
5Elfogadva4/43ms2692 KiB
6Elfogadva4/43ms2904 KiB
7Elfogadva4/43ms3008 KiB
8Elfogadva4/43ms3024 KiB
9Elfogadva5/53ms3304 KiB
10Elfogadva5/53ms3548 KiB
11Elfogadva6/64ms3640 KiB
12Elfogadva6/64ms3868 KiB
13Elfogadva6/64ms4124 KiB
14Elfogadva6/64ms4140 KiB
15Elfogadva6/66ms4028 KiB
16Elfogadva6/66ms4312 KiB
17Elfogadva6/66ms4316 KiB