Submission #463434

#TimeUsernameProblemLanguageResultExecution timeMemory
463434Em1LFountain (eJOI20_fountain)C++14
30 / 100
209 ms524292 KiB
#include <bits/stdc++.h> using namespace std; int main() { int n, q, x, y; cin >> n >> q; vector < vector <int> > cnt(n, vector <int>(n, 0)); vector < pair <int, int> > v; for (int i = 0; i < n; i++) { cin >> x >> y; v.push_back({ x, y }); } for (int i = 0; i < n; i++) { int prev = i, pos = 0; cnt[i][pos++] = i; for (int j = i; j < n; j++) if (v[prev].first < v[j].first) { cnt[i][pos++] = j; prev = j; } cnt[i].resize(pos); } for (int i = 0; i < q; i++) { cin >> x >> y; for (int i = 0; i < n; i++) { if (i > 0 and cnt[x - 1][i] == 0) break; y -= v[cnt[x - 1][i]].second; if (y <= 0) { cout << cnt[x - 1][i] + 1 << '\n'; break; } } if (y > 0) cout << 0 << '\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...