Submission #1278086

#TimeUsernameProblemLanguageResultExecution timeMemory
1278086SabaKharebavaFestival (IOI25_festival)C++20
32 / 100
312 ms16316 KiB
#include<bits/stdc++.h>

using namespace std;

vector<int> max_coupons(int a, vector<int> p, vector<int> t) {
    #define pb push_back
    int n = p.size();

    vector<vector<int>> f;
    for (int i = 0; i < n; i++) {
        f.pb({p[i], t[i], i});
    }

    sort(f.begin(), f.end(), [&](vector<int> a, vector<int> b) {
        if (a[1] == b[1])
            return a[0] < b[0];
        else {
            long long A = -a[0]*a[1]*b[1] - b[0]*b[1];
            long long B = -b[0]*a[1]*b[1] - a[0]*a[1];

            if (A == B)
                return a[0] < b[0];
            return A > B;
        }
    });

    vector<int> ans;
    for (vector<int> v : f) {
        if (a < v[0])
            continue;
        a = (a-v[0]) * v[1];
        ans.pb(v[2]);
    }

    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...