Submission #1019854

#TimeUsernameProblemLanguageResultExecution timeMemory
1019854overwatch9Meetings (IOI18_meetings)C++17
0 / 100
361 ms786432 KiB
#include "meetings.h" #include <bits/stdc++.h> using namespace std; using ll = long long; vector<ll> minimum_costs(vector<int> h, vector<int> L, vector<int> R) { int Q = L.size(); int n = h.size(); vector<ll> ans(Q); vector <vector <ll>> mx(n, vector <ll> (n)); vector <vector <ll>> mx2(n, vector <ll> (n)); for (int i = 0; i < n; i++) { mx[i][i] = h[i]; mx2[i][i] = h[i]; ll x = h[i]; for (int j = i+1; j < n; j++) { mx[i][j] = max(x, (ll)h[j]); x = mx[i][j]; mx[i][j] += mx[i][j-1]; } x = h[i]; for (int j = i-1; j >= 0; j--) { mx2[i][j] = max(x, (ll)h[j]); mx2[i][j] += mx2[i][j+1]; } } for (int i = 0; i < Q; i++) { ans[i] = 1e18; for (int j = L[i]; j <= R[i]; j++) { ll x = mx2[j][L[i]] + mx[j][R[i]] - h[j]; ans[i] = min(ans[i], x); // cout << x << ' '; } } // cout << '\n'; return ans; }
#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...