Submission #206347

#TimeUsernameProblemLanguageResultExecution timeMemory
206347TAISA_Detecting Molecules (IOI16_molecules)C++14
9 / 100
5 ms380 KiB
#include "molecules.h" #include <bits/stdc++.h> #define all(v) v.begin(),v.end() #define eb emplace_back using ll=long long; using namespace std; std::vector<int> find_subset(int l, int u, std::vector<int> w) { sort(all(w)); int n=w.size(); vector<ll> sum(n+1); for(int i=0;i<n;i++){ sum[i+1]=sum[i]+w[i]; } for(ll k=1;k<=n;k++){ ll lb=l-k*w[0],ub=u-k*w[0]; ll mi=sum[k]-k*w[0],ma=sum[n]-sum[n-k]-k*w[0]; if(lb<=ma&&mi<=ub){ ll s=mi; for(int i=k;i<n;i++){ if(lb<=s&&s<=ub){ vector<int> v; for(int j=i-k;j<i;j++)v.eb(j); return v; } s+=w[i]-w[i-k]; } if(lb<=s&&s<=ub){ vector<int> v; for(int j=n-k;j<n;j++)v.eb(j); return v; } } } return vector<int>(0); }
#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...