150162025-02-11 10:27:57BencuLeggyorsabb pénzkeresés (50)cpp17Hibás válasz 46/5012ms1988 KiB
#include <bits/stdc++.h>

using namespace std;
long long n,p,m,sz;

struct szamok{
    long long penz=0;
    long long m=0;
}a[100001];

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    //ifstream f("be.in");
    //f>>n>>p;
    cin>>n>>p;
    long long s=0,i=0;
    while (a[i].m<p && i<n) {
        i++;
        //f>>a[i].penz;
        cin>>a[i].penz;
        if (a[i].penz>=p) sz=1;
        a[i].m=a[i-1].m+a[i].penz;
        m++;
    }
    //cout<<m<<endl;
    while (i<n) {
        i++;
        //f>>a[i].penz;
        cin>>a[i].penz;
        a[i].m=a[i-1].m+a[i].penz;
        if ((a[i].m-a[i-m+1].m)>=p)m--;
    }
    /*for (int i=1; i<=n; i++) {
        //cout<<a[i].penz<<"-"<<a[i].m<<endl;
    }*/
    /*for (int i=1; i<=n; i++) {
        int s=a[i],j=i,t=1;
        //cout<<i<<":"<<s<<" ";
        while (s<p && j<n) {
            j++;
            s=s+a[j];
            //cout<<s<<" ";
            t++;
        }
        //cout<<endl;
        if (t<m && s>=p) m=t;
    }*/
    if (sz==1) cout<<1;
    else cout<<m;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base46/50
1Hibás válasz0/01ms316 KiB
2Elfogadva0/012ms1844 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms500 KiB
6Elfogadva2/22ms564 KiB
7Hibás válasz0/22ms564 KiB
8Elfogadva2/22ms564 KiB
9Elfogadva2/22ms568 KiB
10Elfogadva2/22ms564 KiB
11Elfogadva2/210ms1768 KiB
12Elfogadva2/212ms1848 KiB
13Elfogadva2/212ms1904 KiB
14Elfogadva2/212ms1864 KiB
15Elfogadva2/210ms1852 KiB
16Elfogadva2/212ms1844 KiB
17Elfogadva2/212ms1776 KiB
18Elfogadva2/210ms1884 KiB
19Elfogadva2/210ms1820 KiB
20Elfogadva2/212ms1844 KiB
21Elfogadva2/212ms1848 KiB
22Elfogadva2/212ms1844 KiB
23Elfogadva2/210ms1944 KiB
24Elfogadva2/212ms1976 KiB
25Hibás válasz0/212ms1988 KiB
26Elfogadva2/212ms1932 KiB
27Elfogadva2/212ms1764 KiB