| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1351950 | bbbiros | Detecting Molecules (IOI16_molecules) | C++20 | 0 ms | 344 KiB |
#include "molecules.h"
#include <set>
#include <iostream>
#include <algorithm>
using namespace std;
vector<int> find_subset(int l, int u, vector<int> w)
{
vector<pair<int,int>> a;
for(int i=0;i<w.size();i++)a.push_back({w[i],i});
sort(a.rbegin(),a.rend());
set<pair<int,int>> s;
int sum=0;
for(int i=0;i<w.size();i++)
{
s.insert(a[i]);
sum+=w[i];
if(sum>=l&&sum<=u)break;
while(sum>u)
{
set<pair<int,int>>::iterator it=s.lower_bound({sum-u,0});
if(it==s.end())it--;
sum-=it->first;
s.erase(it);
}
}
if(sum<l||sum>u)return {};
vector<int> ans;
for(pair<int,int> x:s)
{
ans.push_back(x.second);
}
return ans;
}
| # | 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... | ||||
