176062025-08-09 14:40:36BucsMateLeggyorsabb pénzkeresés (50)cpp17Elfogadva 50/5032ms824 KiB
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    int N, P;
    cin >> N >> P;
    vector<int> pay(N);

    for(int i = 0; i < N; ++i){
        cin >> pay[i];
    }

    int index1 = 0, index2 = 0;
    int sum = pay[0];
    int minInterval = N;
    if(pay[0] >= P){
        minInterval = 1;
    }

    while(index2 < N){
        if(sum >= P){
            minInterval = min(minInterval, index2 - index1 + 1);
            sum -= pay[index1];
            index1++;
        }
        else{
            index2++;
            sum += pay[index2];
        }
    }
    cout << minInterval;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/030ms564 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms332 KiB
6Elfogadva2/24ms508 KiB
7Elfogadva2/24ms316 KiB
8Elfogadva2/24ms316 KiB
9Elfogadva2/24ms508 KiB
10Elfogadva2/24ms316 KiB
11Elfogadva2/232ms564 KiB
12Elfogadva2/232ms796 KiB
13Elfogadva2/230ms564 KiB
14Elfogadva2/230ms800 KiB
15Elfogadva2/230ms756 KiB
16Elfogadva2/230ms804 KiB
17Elfogadva2/230ms564 KiB
18Elfogadva2/230ms800 KiB
19Elfogadva2/230ms564 KiB
20Elfogadva2/230ms564 KiB
21Elfogadva2/230ms800 KiB
22Elfogadva2/230ms564 KiB
23Elfogadva2/230ms824 KiB
24Elfogadva2/232ms800 KiB
25Elfogadva2/230ms564 KiB
26Elfogadva2/230ms636 KiB
27Elfogadva2/230ms796 KiB