#include <bits/stdc++.h>
#include "festival.h"
using namespace std;
using ll = long long;
bool cmp(pair<int, pair<int, int>> a, pair<int, pair<int, int>> b) {
if (a.second.first * b.second.first * a.first + b.first * b.second.first < a.second.first * b.second.first * b.first + a.first * a.second.first) {
return true;
}
if (a.second.first * b.second.first * a.first + b.first * b.second.first == a.second.first * b.second.first * b.first + a.first * a.second.first && a.first <= b.first) {
return true;
}
return false;
}
std::vector<int> max_coupons(int A, std::vector<int> P, std::vector<int> T) {
vector<pair<int, pair<int, int>>> p;
int n = (int)P.size();
for (int i = 0; i < n; i++) {
p.push_back({P[i], {T[i], i + 1}});
}
sort(p.begin(), p.end(), cmp);
vector<int> o;
for (auto [l, r] : p) {
if (A >= l) {
o.push_back(r.second);
A = r.first * (A - l);
}
}
return o;
}
# | 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... |