Submission #145076

#TimeUsernameProblemLanguageResultExecution timeMemory
145076NightlightDetecting Molecules (IOI16_molecules)C++14
0 / 100
2 ms376 KiB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;

vector<int> ans;

vector<int> find_subset(int l, int u, vector<int> w) {
  sort(w.begin(), w.end());
  int N = w.size();
  long long sum = w[0];
  int low = N-1, up = N-1;
  while((sum < l || sum > u) && up < N){
    if(low > up)break;
    while(sum < l && up >= low){
      up--;
      sum += w[up];
    }
    if(sum > u){
      sum -= w[low];
      low--;
    }
//    cout << low << " " << up << " " << sum << "\n";
  }
  if(l <= sum && sum <= u){
    for(int i = low; i <= up; i++){
      ans.push_back(w[i]);
    }
    return ans;
  }
  return vector<int>(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...