2053 2022. 12. 15 23:47:43 kovacs.peter.18f Leggyorsabb pénzkeresés (50) cpp11 Elfogadva 50/50 12ms 5264 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 Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 12ms 2748 KiB
3 Elfogadva 2/2 2ms 2260 KiB
4 Elfogadva 2/2 2ms 2484 KiB
5 Elfogadva 2/2 2ms 2664 KiB
6 Elfogadva 2/2 3ms 3048 KiB
7 Elfogadva 2/2 3ms 3352 KiB
8 Elfogadva 2/2 3ms 3560 KiB
9 Elfogadva 2/2 3ms 3508 KiB
10 Elfogadva 2/2 3ms 3760 KiB
11 Elfogadva 2/2 12ms 4252 KiB
12 Elfogadva 2/2 12ms 4248 KiB
13 Elfogadva 2/2 12ms 4252 KiB
14 Elfogadva 2/2 12ms 4252 KiB
15 Elfogadva 2/2 12ms 4348 KiB
16 Elfogadva 2/2 12ms 4452 KiB
17 Elfogadva 2/2 12ms 4524 KiB
18 Elfogadva 2/2 12ms 4528 KiB
19 Elfogadva 2/2 12ms 4656 KiB
20 Elfogadva 2/2 12ms 4860 KiB
21 Elfogadva 2/2 12ms 4936 KiB
22 Elfogadva 2/2 12ms 4936 KiB
23 Elfogadva 2/2 12ms 4936 KiB
24 Elfogadva 2/2 12ms 5060 KiB
25 Elfogadva 2/2 12ms 5140 KiB
26 Elfogadva 2/2 12ms 5140 KiB
27 Elfogadva 2/2 12ms 5264 KiB