205632026-01-07 18:11:18algoproLeggyorsabb pénzkeresés (50)cpp17Accepted 50/5029ms808 KiB
// UUID: d69c6f02-17db-4aff-a17e-9e3dc284dde4
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n, p;
    cin >> n >> p;
    vector<int> v(n+1);
    for (int i=1; i<=n; i++) {
        cin >> v[i];
    }
    int j=1, most=v[1], min=n+1;
    for (int i=1; i<n; i++) {
        most-=v[i-1]; //ez csak arra jó hogy amikor i növekszik akkor nem kell újra számolni az egész összeget.
        while (j<v.size() && most<p) {
            j++;
            most+=v[j];
        }
        if (most>=p && j-i+1<min) {
            min=j-i+1;
        }
    }
    cout << min; 
} // arra már rá jöttem hogy jobb ha 1-től számozom a sorozatot mert akkor ki tudok belőle vonni
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms508 KiB
2Accepted0/028ms748 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/24ms316 KiB
7Accepted2/24ms380 KiB
8Accepted2/24ms316 KiB
9Accepted2/24ms324 KiB
10Accepted2/24ms324 KiB
11Accepted2/228ms564 KiB
12Accepted2/229ms808 KiB
13Accepted2/228ms564 KiB
14Accepted2/228ms564 KiB
15Accepted2/228ms564 KiB
16Accepted2/228ms564 KiB
17Accepted2/228ms800 KiB
18Accepted2/228ms800 KiB
19Accepted2/228ms564 KiB
20Accepted2/228ms748 KiB
21Accepted2/228ms564 KiB
22Accepted2/228ms564 KiB
23Accepted2/228ms564 KiB
24Accepted2/229ms564 KiB
25Accepted2/228ms564 KiB
26Accepted2/228ms564 KiB
27Accepted2/228ms748 KiB