#include<bits/stdc++.h>
using namespace std;
#define pb push_back
const long long MOD = 9223372036854775807;
vector<int> max_coupons(int ra, vector<int> p, vector<int> t) {
	int n = p.size();
	long long a = ra;
	vector<int> order;
	for (int i = 0; i < n; i++)
		order.pb(i);
	sort(order.begin(), order.end(), [&](int i, int j) {
		long long A = -p[i]*t[i]*t[j] - p[j]*t[j];
		long long B = -p[j]*t[i]*t[j] - p[i]*t[i];
		if (A == B)
			return p[i] < p[j];
		return A > B;
	});
	
	vector<int> ans; /*, q;
	int ind = 0;
	for (int e : order) {
		while (ind != q.size() and a > p[q[ind]]) {
			a = ((a-p[q[ind]]) * t[q[ind]]) % MOD;
			ans.pb(q[ind]);
			ind++;
		}
		if (a >= p[e]) {
			ans.pb(e);
			a = ((a-p[e]) * t[e]) % MOD;
		} else {
			q.pb(e);
		}
	}
	
	
	cout<< "\nORDER :\n\t";
	for (int e : order) {
		cout<< e << ' ';
	}
	cout<< '\n';
	*/
	return order;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |