183172025-10-19 21:51:29ercseferencLádapakolás raktárban (50)cpp17Elfogadva 50/5050ms3124 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n,h;
    cin>>n>>h; vector<int>a(n);
    set<int>lada; int k,db=1,m=0;
    for(int i=0; i<n; i++)cin>>a[i];
    bool nov;
    for(int i=0; i<n; i++){
        if(lada.empty()){
            lada.insert(a[i]);
            m=a[i];
            if(a[i+1]-a[i]>0)nov=1;
            else if(a[i+1]-a[i]<0)nov=0;
            else{lada.clear(); db++;}}
        else{
            if(!lada.count(a[i])&& m+a[i]<=h){
                int jo;
                if(a[i]-a[i-1]>0 && nov)jo=1;
                else if(a[i]-a[i-1]<0 && !nov)jo=1;
                else if(a[i]-a[i-1]<0 && nov){nov=0; jo=1;}
                else jo=0;
                if(jo){lada.insert(a[i]); m+=a[i];}
                else {lada.clear(); i--; db++;}}
            else {lada.clear(); i--; db++;}}}
    cout<<n-db;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms508 KiB
2Elfogadva0/04ms316 KiB
3Elfogadva2/21ms500 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms508 KiB
6Elfogadva2/21ms496 KiB
7Elfogadva2/21ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/31ms320 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva2/21ms508 KiB
12Elfogadva2/22ms316 KiB
13Elfogadva3/33ms316 KiB
14Elfogadva3/34ms316 KiB
15Elfogadva3/34ms316 KiB
16Elfogadva2/230ms1168 KiB
17Elfogadva3/341ms1428 KiB
18Elfogadva3/350ms1680 KiB
19Elfogadva3/337ms1380 KiB
20Elfogadva3/350ms2868 KiB
21Elfogadva3/345ms2764 KiB
22Elfogadva3/348ms3124 KiB