Submission #1336999

#TimeUsernameProblemLanguageResultExecution timeMemory
1336999aritro_Festival (IOI25_festival)C++20
5 / 100
199 ms15884 KiB
#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
#define endl '\n'
#define pb push_back
#define ff first
#define ss second
#define all(a) a.begin(),a.end()

vector<int> max_coupons(int s,vector<int>p,vector<int>t){
    int n=p.size();
    vector<pair<pair<int,int>,int>>a(n);
    for(int i=0;i<n;i++) a[i]={{p[i],t[i]},i};
    sort(all(a));
    vector<int>ans;
    int money=s;
    map<int,int> bought;
    for(int i=0;i<n;i++){
        if(a[i].ff.ss==1) continue;
        if(money<(2*a[i].ff.ff)) continue;
        money=(money-a[i].ff.ff)*a[i].ff.ss;
        ans.pb(a[i].ss);
        bought[a[i].ss]=1;
    }
    for(int i=0;i<n;i++){
        if(bought[a[i].ss]) continue;
        if(a[i].ff.ff>money) continue;
        money=(money-a[i].ff.ff)*a[i].ff.ss;
        ans.pb(a[i].ss);
        bought[a[i].ss]=1;
    }
    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...