20532022-12-15 23:47:43kovacs.peter.18fLeggyorsabb pénzkeresés (50)cpp11Elfogadva 50/5012ms5264 KiB
#include <iostream>
#include <vector>

using namespace std;

int main() {
    cin.sync_with_stdio(false);
    cin.tie(nullptr);

    int N, P;
    cin >> N >> P;
    vector<int> payS(N);
    for (auto &e : payS) {
        cin >> e;
    }
    int minimum = -1;
    for (int l = 0, r = 0, current = 0; l < N; l++) {
        while (r < N && current < P) {
            current += payS[r++];
        }
        if (current >= P && (minimum == -1 || r - l < minimum)) {
            minimum = r - l;
        }
        current -= payS[l];
    }
    cout << minimum << '\n';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1828 KiB
2Elfogadva0/012ms2748 KiB
3Elfogadva2/22ms2260 KiB
4Elfogadva2/22ms2484 KiB
5Elfogadva2/22ms2664 KiB
6Elfogadva2/23ms3048 KiB
7Elfogadva2/23ms3352 KiB
8Elfogadva2/23ms3560 KiB
9Elfogadva2/23ms3508 KiB
10Elfogadva2/23ms3760 KiB
11Elfogadva2/212ms4252 KiB
12Elfogadva2/212ms4248 KiB
13Elfogadva2/212ms4252 KiB
14Elfogadva2/212ms4252 KiB
15Elfogadva2/212ms4348 KiB
16Elfogadva2/212ms4452 KiB
17Elfogadva2/212ms4524 KiB
18Elfogadva2/212ms4528 KiB
19Elfogadva2/212ms4656 KiB
20Elfogadva2/212ms4860 KiB
21Elfogadva2/212ms4936 KiB
22Elfogadva2/212ms4936 KiB
23Elfogadva2/212ms4936 KiB
24Elfogadva2/212ms5060 KiB
25Elfogadva2/212ms5140 KiB
26Elfogadva2/212ms5140 KiB
27Elfogadva2/212ms5264 KiB