| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1344016 | vjudge1 | Festival (IOI25_festival) | C++20 | 58 ms | 5680 KiB |
#include <bits/stdc++.h>
using namespace std;
vector<int> max_coupons(int A, vector<int> P, vector<int> T) {
int N = P.size();
vector<int> result;
// separar cupones
vector<int> buenos; // T > 1
vector<int> malos; // T == 1
for (int i = 0; i < N; i++) {
if (T[i] > 1) {
buenos.push_back(i);
} else {
malos.push_back(i);
}
}
// ordenar los buenos por mayor T y menor precio
sort(buenos.begin(), buenos.end(), [&](int a, int b) {
if (T[a] == T[b]) return P[a] < P[b];
return T[a] > T[b];
});
// intentar comprar los buenos
for (int i : buenos) {
if (A >= P[i]) {
A = (A - P[i]) * T[i];
result.push_back(i);
}
}
// ordenar los malos por precio
sort(malos.begin(), malos.end(), [&](int a, int b) {
return P[a] < P[b];
});
// comprar los malos
for (int i : malos) {
if (A >= P[i]) {
A -= P[i];
result.push_back(i);
}
}
return result;
}| # | 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... | ||||
