# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
528729 | groshi | Detecting Molecules (IOI16_molecules) | C++17 | 108 ms | 19628 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "molecules.h"
#include<iostream>
#include<vector>
#include<map>
#include<algorithm>
using namespace std;
map<long long,int> mapka;
vector<int> t;
vector<int> find_subset(int l,int u,vector<int> w)
{
long long suma=0;
mapka[0]=-1;
vector<pair<long long,int> > Q;
for(int i=0;i<w.size();i++)
Q.push_back(make_pair(w[i],i));
sort(Q.begin(),Q.end());
for(int i=0;i<w.size();i++)
{
suma+=(long long)Q[i].first;
auto it=mapka.lower_bound(suma-(long long)u);
if(it==mapka.end())
{
mapka[suma]=i;
continue;
}
long long gdzie=it->first;
if(suma-gdzie>=(long long)l && suma-gdzie<=(long long)u)
{
for(int j=it->second+1;j<=i;j++)
{
t.push_back(Q[j].second);
}
break;
}
mapka[suma]=i;
}
return t;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |