205632026-01-07 18:11:18algoproLeggyorsabb pénzkeresés (50)cpp17Elfogadva 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
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms508 KiB
2Elfogadva0/028ms748 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/24ms316 KiB
7Elfogadva2/24ms380 KiB
8Elfogadva2/24ms316 KiB
9Elfogadva2/24ms324 KiB
10Elfogadva2/24ms324 KiB
11Elfogadva2/228ms564 KiB
12Elfogadva2/229ms808 KiB
13Elfogadva2/228ms564 KiB
14Elfogadva2/228ms564 KiB
15Elfogadva2/228ms564 KiB
16Elfogadva2/228ms564 KiB
17Elfogadva2/228ms800 KiB
18Elfogadva2/228ms800 KiB
19Elfogadva2/228ms564 KiB
20Elfogadva2/228ms748 KiB
21Elfogadva2/228ms564 KiB
22Elfogadva2/228ms564 KiB
23Elfogadva2/228ms564 KiB
24Elfogadva2/229ms564 KiB
25Elfogadva2/228ms564 KiB
26Elfogadva2/228ms564 KiB
27Elfogadva2/228ms748 KiB