Submission #687333

#TimeUsernameProblemLanguageResultExecution timeMemory
687333Em1LFountain (eJOI20_fountain)C++17
0 / 100
1579 ms3668 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, q, vol, pos; cin >> n >> q; vector < pair < int, int > > v(n); for (int i = 0; i < n; i++) cin >> v[i].first >> v[i].second; vector < int > pour(n); stack < int > st; for (int i = n - 1; i >= 0; i--) { while (!st.empty() and v[st.top()] <= v[i]) st.pop(); pour[i] = (st.empty() ? -1 : st.top()); st.push(i); } for (int i = 0; i < q; i++) { cin >> pos >> vol; pos--; while (pos != -1) { vol -= v[pos].second; if (vol <= 0) break; pos = pour[pos]; } cout << pos + 1 << '\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...