224842026-01-15 09:32:39szasztundeBányász RPG (40 pont)cpp17Time limit exceeded 36/40400ms1076 KiB
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;
struct par
{
    int tap,menny;
};
bool hasonlit(par x,par y){
        return x.tap<y.tap;
}
int main()
{
    ios_base::sync_with_stdio(false);
	cin.tie(NULL);
    int n;
	cin>>n;
	vector <par> a(n);
	for(int i=0;i<n;i++) cin>>a[i].tap;
	for(int i=0;i<n;i++) cin>>a[i].menny;
	sort(a.begin(),a.end(),hasonlit);
	//for(int i=0;i<n;i++) cout<<a[i].tap<<" "<<a[i].menny<<endl;
	int i=0,j=n-1,perc=0,tapp=0;
	while(i<=j)
    {
        while(a[i].tap<=tapp && i<=j)
        {
            perc+=a[i].menny;
            tapp+=a[i].menny;
            i++;
        }
        if(i<=j)
        while(a[i].tap>tapp)
        {
            if(a[j].tap<=tapp)
            {
                perc+=a[j].menny;
                tapp+=a[j].menny;
                j--;
            }
            else
            {
                perc+=2;
                tapp++;
                a[j].menny--;
            }
        }
    }
    cout<<perc;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base36/40
1Accepted0/01ms316 KiB
2Accepted0/06ms508 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms500 KiB
5Accepted2/24ms316 KiB
6Accepted2/28ms564 KiB
7Accepted2/22ms316 KiB
8Accepted2/22ms316 KiB
9Accepted3/31ms316 KiB
10Accepted3/31ms316 KiB
11Accepted3/31ms316 KiB
12Accepted3/31ms316 KiB
13Accepted4/41ms332 KiB
14Accepted4/41ms368 KiB
15Time limit exceeded0/2400ms828 KiB
16Accepted2/223ms824 KiB
17Time limit exceeded0/2400ms820 KiB
18Accepted2/229ms1076 KiB