Submission #1265843

#TimeUsernameProblemLanguageResultExecution timeMemory
1265843thenpcFestival (IOI25_festival)C++20
0 / 100
42 ms5684 KiB
#include <bits/stdc++.h>
#include "festival.h"
using namespace std;
#define ll long long
vector<int> max_coupons(int a,vector<int> p,vector<int> t){
  vector<pair<int,int>> v[5];
  vector<int> u;

  for(int i=0;i<p.size();i++){
    v[t[i]].push_back({p[i],i});
  }
  sort(v[1].begin(),v[1].end());
  sort(v[2].begin(),v[2].end());
  int cnt1=0,cnt2=0;
  while(cnt1<v[1].size()&&cnt2<v[2].size()){
    if(a-v[1][cnt1].first<(a-v[2][cnt2].first)*2||cnt1==v[1].size()){
      if(a<0){
        break;
      }
      u.push_back(v[2][cnt2].second);
      a=(a-v[2][cnt2].first)*2;
      cnt2++;
    }
    else if(a-v[1][cnt1].first>(a-v[2][cnt2].first)*2||cnt2==v[2].size()){
      if(a<0){
        break;
      }
      u.push_back(v[1][cnt1].second);
      a-=v[1][cnt1].first;
      cnt1++;
    }
  }
  return u;
}
#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...