176062025-08-09 14:40:36BucsMateLeggyorsabb pénzkeresés (50)cpp17Accepted 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;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/030ms564 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms332 KiB
6Accepted2/24ms508 KiB
7Accepted2/24ms316 KiB
8Accepted2/24ms316 KiB
9Accepted2/24ms508 KiB
10Accepted2/24ms316 KiB
11Accepted2/232ms564 KiB
12Accepted2/232ms796 KiB
13Accepted2/230ms564 KiB
14Accepted2/230ms800 KiB
15Accepted2/230ms756 KiB
16Accepted2/230ms804 KiB
17Accepted2/230ms564 KiB
18Accepted2/230ms800 KiB
19Accepted2/230ms564 KiB
20Accepted2/230ms564 KiB
21Accepted2/230ms800 KiB
22Accepted2/230ms564 KiB
23Accepted2/230ms824 KiB
24Accepted2/232ms800 KiB
25Accepted2/230ms564 KiB
26Accepted2/230ms636 KiB
27Accepted2/230ms796 KiB