Submission #1151631

#TimeUsernameProblemLanguageResultExecution timeMemory
1151631ghammazhassanBikeparking (EGOI24_bikeparking)C++20
100 / 100
35 ms7492 KiB
// #include <bits/stdc++.h>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <map>
#include <vector>
#include <iomanip>
#include <string>
#include <queue>
#include <set>
#include <deque>
using namespace std;
#define int long long
const int N=3e5+5;
const int M=998244353;
const int LOG = 18;
int n , m , c , t=1 , q=1 , x , y;
vector<int>a(N),b(N),p(N);

void solve()
{
	cin >> n;
	for (int i=0;i<n;i++){
		cin >> a[i];
	}
	int l=0;
	for (int i=0;i<n;i++){
		cin >> b[i];
		l-=b[i];
	}
	int c=0;
	int r=0;
	for (int i=0;i<n;i++){
		int u=min(b[i],c);
		l+=u*2;
		c-=u;
		b[i]-=u;
		r=min(r,c);
		r+=min(b[i],a[i]);
		c+=a[i];
		r=min(r,c);
	}
	cout << l+r << endl;
}
signed main()
{

    ios::sync_with_stdio(0);//DO NOT USE IN INTERACTIVE
    cin.tie(0), cout.tie(0);//DO NOT USE IN INTERACTIVE
    cout << fixed<<setprecision(9);
    // int t=1;
    // cin >> t;
    
    for (int _=1;_<=t;_++){
    	solve();
    	q++;
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...