Submission #455219

#TimeUsernameProblemLanguageResultExecution timeMemory
455219armandFountain (eJOI20_fountain)C++14
30 / 100
1575 ms3248 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...