Submission #1011341

#TimeUsernameProblemLanguageResultExecution timeMemory
1011341gutzzyDetecting Molecules (IOI16_molecules)C++17
69 / 100
29 ms4952 KiB
#include <bits/stdc++.h>
using namespace std;

vector<int> find_subset(int l, int u, vector<int> ww){
    int n = ww.size();
    vector<int> ans;
    vector<pair<int,int>> w(n);
    for(int i=0;i<n;i++){
        w[i] = {ww[i],i};
    }
    sort(w.begin(),w.end());
    int i = 0;
    int j = 0;
    int cur = w[0].first;
    while(i<n and j<n){
        if(cur<l){
            j++;
            cur+=w[j].first;
        }
        else if(u<cur){
            cur-=w[i].first;
            i++;
        }
        else{
            for(int k=i;k<=j;k++){
                ans.push_back(w[k].second);
            }
            return ans;
        }
    }
    return ans;
}

/*
int main(){
    for(auto a:find_subset(10, 20, {15, 17, 16, 18})){
        cout << a << endl;
    }

    return 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...