Submission #102046

#TimeUsernameProblemLanguageResultExecution timeMemory
102046tim25871014Detecting Molecules (IOI16_molecules)C++17
0 / 100
3 ms512 KiB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;

vector<int> find_subset(int l,int u,vector<int> w){

    vector<int> ans;

    int n=w.size();
    vector<pair<int,int>> wp;
    for(int i=0;i<n;i++)
        wp.push_back({w[i],i});
    sort(wp.begin(),wp.end());

    int sum=0,check=0;
    deque<pair<int,int>> sub;
    for(int i=0;i<n;i++){
        sum+=w[i],sub.push_back(wp[i]);
        while(sum>u) sum-=sub.front().second,sub.pop_front();
        if(sum<=u && sum>=l) {check=1;break;}
    }
    if(!check) return ans;
    for(auto i:sub) ans.push_back(i.second+1);
    return ans;

}
#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...