84362024-01-16 09:48:21GervidLeggyorsabb pénzkeresés (50)cpp17Hibás válasz 4/5034ms14004 KiB
#include <iostream>
#include <vector>
#include <limits.h>

using namespace std;

int main()
{
    int n, p, i, j;
    cin >> n >> p;

    vector<int> days(n);
    
    for (i = 0; i < n; i++)
    {
        cin >> days[i];
    }

    int current = days[0], min = INT_MAX, out = 0;
    i = 0, j = 0;

    while (j < n)
    {
        while (current >= p)
        {
            current -= days[i];
            i++;
        
            if (min > current && current >= p && j < n)
            {
                min = current;
                out = j - i + 1;
            }
        }

        while (current < p)
        {
            j++;

            if (j >= n)
            {
                break;
            }

            current += days[j];
        }

    }

    cout << out;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base4/50
1Elfogadva0/03ms1812 KiB
2Hibás válasz0/032ms3276 KiB
3Elfogadva2/23ms2752 KiB
4Elfogadva2/23ms2988 KiB
5Hibás válasz0/23ms3132 KiB
6Hibás válasz0/26ms3260 KiB
7Hibás válasz0/26ms3588 KiB
8Hibás válasz0/26ms3596 KiB
9Hibás válasz0/26ms3916 KiB
10Hibás válasz0/26ms3940 KiB
11Hibás válasz0/232ms5036 KiB
12Hibás válasz0/232ms5772 KiB
13Hibás válasz0/232ms6228 KiB
14Hibás válasz0/232ms6840 KiB
15Hibás válasz0/234ms7440 KiB
16Hibás válasz0/232ms7892 KiB
17Hibás válasz0/232ms8628 KiB
18Hibás válasz0/232ms9112 KiB
19Hibás válasz0/232ms9564 KiB
20Hibás válasz0/232ms10420 KiB
21Hibás válasz0/232ms10752 KiB
22Hibás válasz0/232ms11356 KiB
23Hibás válasz0/232ms11724 KiB
24Hibás válasz0/232ms12336 KiB
25Hibás válasz0/232ms12816 KiB
26Hibás válasz0/232ms13548 KiB
27Hibás válasz0/232ms14004 KiB