Submission #872695

#TimeUsernameProblemLanguageResultExecution timeMemory
872695LucaLucaMDetecting Molecules (IOI16_molecules)C++17
0 / 100
0 ms348 KiB
#include "molecules.h"
#ifdef LOCAL
#include "grader.cpp"
#endif
#include <vector>
#include <cassert>
#include <algorithm>

typedef long long ll;

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
  int n = (int) w.size();
  std::vector<std::pair<int, int>> a(n);
  for (int i = 0; i < n; i++) {
    a[i] = {w[i], i};
  }
  std::sort(a.begin(), a.end());
  std::vector<int> ret;
  ll s = 0;

  for (const auto &[val, idx] : a) {
    if (l <= val && val <= u) {
      ret = {idx};
      return ret;
    }
  }

  for (const auto &[val, idx] : a) {
    s += val;
    ret.push_back(idx);
    if (l <= s && s <= u) {
      return ret;
    }
  }
  return ret;
}

/**

4 15 17
6 8 8 7


**/
#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...