Submission #59064

#TimeUsernameProblemLanguageResultExecution timeMemory
59064Bodo171Detecting Molecules (IOI16_molecules)C++14
100 / 100
81 ms31712 KiB
#include "molecules.h"
#include <vector>
#include <algorithm>
using namespace std;
vector< pair<int,int> >v;
vector<int> ans;
int i,p,j;
vector<int> find_subset(int l, int u, std::vector<int> w) {
    for(i=0;i<w.size();i++)
    {
        v.push_back({w[i],i});
    }
    long long L=l,U=u,sum=0;
    sort(v.begin(),v.end());
    p=0;
    for(i=0;i<v.size();i++)
    {
        sum+=v[i].first;
        while(p<i&&sum>U)
        {
            sum-=v[p].first;
            p++;
        }
        if(sum>=L&&sum<=U)
        {
            for(j=p;j<=i;j++)
                ans.push_back(v[j].second);
            sort(ans.begin(),ans.end());
            return ans;
        }
    }
    return vector<int>(0);
}

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:9:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(i=0;i<w.size();i++)
             ~^~~~~~~~~
molecules.cpp:16:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(i=0;i<v.size();i++)
             ~^~~~~~~~~
#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...