Submission #977398

#TimeUsernameProblemLanguageResultExecution timeMemory
977398sstojilkovic19Detecting Molecules (IOI16_molecules)C++14
0 / 100
1 ms348 KiB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    //return std::vector<int>(0);

    int leva=-1, desna=-1;
    vector<int>ans;
    //sort(w.begin(), w.end());
    int n = w.size();
    vector<int>pref(n+5, 0);
    for(int i = 1; i<=n; i++)pref[i]=pref[i-1]+w[i-1];

    for(int i = 1; i<=n; i++)
    {
        auto g = upper_bound(pref.begin(),pref.end(), pref[i]-l) - pref.begin();
        if(g==0)continue;
        if(pref[i]-pref[g-1]<=u)
        {
            leva = g;
            desna = i;
            break;
        }


    }
    if(leva==-1 && desna==-1)
        return vector<int>(0);
    else
    {
        for(int i = leva; i<=desna; i++)ans.push_back(w[i-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...