Submission #576497

#TimeUsernameProblemLanguageResultExecution timeMemory
576497NaserFountain (eJOI20_fountain)C++17
30 / 100
1571 ms2044 KiB
#include <bits/stdc++.h>
#define endl '\n'
#define int long long
#define pii pair<int,int>
#define vint vector<int>
#define se second
#define fi first
#define pb push_back
#define all(x) x.begin(), x.end()
using namespace std; 

int32_t main() {

    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);


    int t = 1;
     //cin >> t;
    while (t--) {
        int n, q;
        cin >> n >> q;
        vint d(n);
        vint c(n);
        for (int i = 0; i < n; i++) {
            cin >> d[i] >> c[i];
        }
        while (q--) {
            int x, y;
            cin >> x >> y;
            int pos = x - 1;
            if (c[pos] >= y) {
                cout << x << endl;
                continue;
            }
            else {
                y -= c[pos];
            }
            for (int i = x; i < n; i++) {
                if (d[i] > d[pos]) {
                    pos = i;
                    if (c[i] >= y) {
                        y = 0;
                        break;
                    }
                    else {
                        y -= c[i];
                        pos = i;
                    }
                }
                
            }
            if (y){
                cout << 0 << endl;
                continue;
            }
            cout << pos + 1 << endl;
        }
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...