Submission #282077

#TimeUsernameProblemLanguageResultExecution timeMemory
282077diegoangulo5Detecting Molecules (IOI16_molecules)C++14
69 / 100
58 ms7656 KiB
#include "molecules.h" #include <bits/stdc++.h> using namespace std; vector<int> responder(vector<pair<int, int> > x, int a, int b){ vector<int> res; for(;a<=b;a++){ res.push_back(x[a].second); } sort(res.begin(), res.end()); return res; } vector<int> find_subset(int l, int u, vector<int> w) { vector<pair<int, int> >x; for(int a=0;a<w.size();a++){ x.push_back(make_pair(w[a], a)); } int lim = x.size(); sort(x.begin(), x.end()); for(int a=0;a<lim;a++){ x.push_back(make_pair(x[a].first, x[a].second)); } int a=0, b=0; int sum = x[a].first; int tam = x.size(); while(1){ if(b-a+1 > lim)return vector<int>(); if(sum >= l && sum <= u){ return responder(x, a, b); } else if(sum > u){ sum -= x[a].first; a++; if(a==tam)return vector<int>(); if(a>b){ b++; sum = x[b].first; } } else if(sum<l){ b++; if(b==tam)return vector<int>(); sum += x[b].first; } } return vector<int>(); }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:17:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for(int a=0;a<w.size();a++){
      |                 ~^~~~~~~~~
#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...