4251 2023. 03. 19 17:25:21 horvathabel Ládapakolás raktárban (50) cpp17 Elfogadva 50/50 52ms 8596 KiB
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, k;
cin>>n>>k;
vector<int> m;
for (int i=0;i<n;i++){
	int x;
	cin>>x;
	m.push_back(x);
}
int sum=m[0];
set<int> s;
int ans=0; 
s.insert(m[0]); 
bool voltefopont=false; 
for (int i=1; i<n;i++){
	if (m[i]<m[i-1] && !voltefopont) voltefopont=true; 
	if (voltefopont && m[i]>m[i-1] or (sum+m[i]>k or s.find(m[i])!=s.end())){
		sum=0; 
		voltefopont=false;
		ans++;
		s.clear(); 
	}  
	sum+=m[i];
	s.insert(m[i]);
}
cout<<n-ans-1; 
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1808 KiB
2 Elfogadva 0/0 4ms 2292 KiB
3 Elfogadva 2/2 3ms 2212 KiB
4 Elfogadva 2/2 3ms 2432 KiB
5 Elfogadva 2/2 3ms 2644 KiB
6 Elfogadva 2/2 3ms 2880 KiB
7 Elfogadva 2/2 2ms 2944 KiB
8 Elfogadva 2/2 2ms 2936 KiB
9 Elfogadva 3/3 3ms 2952 KiB
10 Elfogadva 2/2 3ms 3076 KiB
11 Elfogadva 2/2 3ms 3164 KiB
12 Elfogadva 2/2 3ms 3316 KiB
13 Elfogadva 3/3 4ms 3552 KiB
14 Elfogadva 3/3 4ms 3828 KiB
15 Elfogadva 3/3 6ms 4040 KiB
16 Elfogadva 2/2 32ms 5004 KiB
17 Elfogadva 3/3 41ms 5008 KiB
18 Elfogadva 3/3 50ms 5012 KiB
19 Elfogadva 3/3 37ms 5096 KiB
20 Elfogadva 3/3 52ms 8080 KiB
21 Elfogadva 3/3 46ms 8076 KiB
22 Elfogadva 3/3 48ms 8596 KiB