This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
using namespace std;
const int N = 100005;
int d[N], c[N], r[N], v[N];
int main()
{
	int n, i, q;
	int r, v;
	cin >> n >> q;
	for (i = 1; i <= n; i++)
		cin >> d[i] >> c[i];
	while (q--) {
		cin >> r >> v;
		if (v <= c[r]) {
			cout << r << endl;
			continue;
		}
		i = r + 1;
		v -= c[r];
		while (i <= n) {
			if (d[i] > d[r]) {
				if (v <= c[i]) {
					cout << i << endl;
					break;
				}
				else {
					v -= c[i];
					r = i;
					i++;
				}
			}
			else
				i++;
		}
		if (i > n)
			cout << 0 << endl;
	}
//	system("pause");
	return 0;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |