| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1335854 | itslq | Bikeparking (EGOI24_bikeparking) | C++20 | 128 ms | 23920 KiB |
#include "bits/stdc++.h"
using namespace std;
#define int long long
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int N; cin >> N;
vector<int> X(N), Y(N);
map<int, int> rem;
int ans = 0;
for (int i = 0; i < N; i++) cin >> X[i];
for (int i = 0; i < N; i++) {
cin >> Y[i];
if (Y[i]) rem[i] = Y[i];
}
for (int i = N - 2; i >= 0; i--) {
auto it = rem.upper_bound(i);
const auto l = it;
while (it != rem.end() && it -> second <= X[i]) {
X[i] -= it -> second;
ans += it -> second;
it++;
}
if (it != rem.end() && X[i]) {
it -> second -= X[i];
ans += X[i];
X[i] = 0;
}
rem.erase(l, it);
}
for (auto kv : rem) {
ans -= max(0LL, kv.second - X[kv.first]);
}
cout << ans;
}| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
