Submission #52627

#TimeUsernameProblemLanguageResultExecution timeMemory
52627alenam0161Detecting Molecules (IOI16_molecules)C++17
100 / 100
67 ms31932 KiB
#include "molecules.h" #include <iostream> #include <algorithm> #include <vector> using namespace std; struct po{ int fi; int se; po(int _x=0,int _y=0){ fi=_x;se=_y; } bool operator<(const po&oth){ return fi<oth.fi; } }; std::vector<int> find_subset(int l, int u, std::vector<int> w) { long long sum=0; po e; vector<po> all; int n=w.size(); for(int i=0;i<n;++i)all.push_back(po(w[i],i)); sort(all.begin(),all.end()); int le=0; int r=-1; while(true){ while(r<n&&sum<l){ sum+=all[++r].fi; } if(r==n&&sum<l){ break; } if(sum>=l&&sum<=u){ vector<int> ans; for(int j=le;j<=r;++j){ ans.push_back(all[j].se); } // cout<<sum<<" "<<le<<" "<<r<<endl; return ans; } sum-=all[le++].fi; } return std::vector<int>(); }
#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...