206002026-01-07 18:52:52algoproBányász RPG (40 pont)cpp17Elfogadva 40/4065ms2356 KiB
// UUID: ec0b97e3-5a0d-4920-95c3-af2554a38ac8
#include <bits/stdc++.h>
using namespace std;

int main() {
	long long N; cin>>N;
	vector<pair<long long, long long>> V(N);
	for(long long i=0; i<N; i++) cin>>V[i].first;
	for(long long i=0; i<N; i++) cin>>V[i].second;
	sort(V.begin(), V.end());
	vector<long long> prefix(N+1);
	prefix[1]=V[0].second;
	for(long long i=1; i<N; i++) prefix[i+1]=prefix[i]+V[i].second;
	long long ketpercesek=0;
	for(long long i=N-1; i>=0; i--)
	{
		if(V[i].first>ketpercesek+prefix[i])
		{
			if(ketpercesek+prefix[i]+V[i].second>V[i].first)
			{
				ketpercesek+=V[i].first-(ketpercesek+prefix[i]);
			}
			else
			{
				ketpercesek+=V[i].second;
			}
			
		}
	}
	cout<<ketpercesek+prefix[N];
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/012ms564 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms508 KiB
5Elfogadva2/210ms612 KiB
6Elfogadva2/221ms896 KiB
7Elfogadva2/23ms316 KiB
8Elfogadva2/24ms556 KiB
9Elfogadva3/31ms500 KiB
10Elfogadva3/31ms404 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva3/31ms316 KiB
13Elfogadva4/41ms316 KiB
14Elfogadva4/41ms316 KiB
15Elfogadva2/237ms1396 KiB
16Elfogadva2/250ms1972 KiB
17Elfogadva2/241ms1516 KiB
18Elfogadva2/265ms2356 KiB