Submission #414775

#TimeUsernameProblemLanguageResultExecution timeMemory
414775MeGustaElArroz23Detecting Molecules (IOI16_molecules)C++14
0 / 100
1083 ms204 KiB
#include "molecules.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef vector<ll> vi; typedef vector<vi> vvi; typedef pair<ll,ll> pii; typedef vector<pii> vii; typedef vector<vii> vvii; void debug(auto v){ for (auto x:v) cerr << x << ' '; cerr << '\n'; } vector<int> find_subset(int l, int u, vector<int> w) { //cerr<<1; int n=w.size(); vii v(n); //cerr<<4; for (int i=0;i<n;i++) v[i]=pii{w[i],i}; //cerr<<3; sort(v.begin(),v.end()); vii pref(n+1); pref[0]=pii{0,0}; //cerr<<2; for (int i=1;i<=n;i++){ pref[i].first=pref[i-1].first+v[i-1].first; pref[i].second=pref[i-1].second+v[n-i].first; } //cerr<<0; for (int i=1;i<=n;i++){ if ((l>=pref[i].first and l<=pref[i].second) or (u>=pref[i].first and u<=pref[i].second) or (l<=pref[i].first and u>=pref[i].second)){ //cerr<<i; vi sol(i); for (int j=0;j<i;j++) sol[j]=j; ll suma=pref[i].first; int counter=0; while(suma<u){ suma-=v[counter].first; suma+=v[n-counter-1].first; sol[counter]=n-counter-1; } //debug(sol); //cerr<<0; for (int j=0;j<i;j++) sol[j]=v[sol[j]].second; //debug(sol); //cerr<<1; sort(sol.begin(),sol.end()); vector<int> solu(i); for (int j=0;j<i;j++) solu[j]=sol[j]; return solu; } } return vector<int>(0); }

Compilation message (stderr)

molecules.cpp:13:12: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   13 | void debug(auto v){
      |            ^~~~
#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...