Submission #1314778

#TimeUsernameProblemLanguageResultExecution timeMemory
1314778Noname_1900Bikeparking (EGOI24_bikeparking)C++20
25 / 100
29 ms5084 KiB
#include<bits/stdc++.h> using namespace std; const int NMAX = 3*1e5; #define int long long int parking[NMAX]; int users[NMAX]; signed main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin >> N; for(int i = 0; i < N; i++) { cin >> parking[i]; } for(int i = 0; i < N; i++) { cin >> users[i]; } int iParking = N-1; int score = 0; for(int iU = N-1; iU >= 0; iU--) { iParking = min(iParking, iU-1); while((iParking >= 0) && (users[iU] > 0)) { int a = parking[iParking]; if(a >= users[iU]) { parking[iParking] -= users[iU]; score += users[iU]; users[iU] = 0; } else { users[iU] -= a; parking[iParking] = 0; score += a; iParking--; } } //reste milieu int u = users[iU]; int p = parking[iU]; users[iU] -= min(u,p); parking[iU] -= min(u,p); score -= users[iU]; } cout << score; }
#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...