Submission #310929

#TimeUsernameProblemLanguageResultExecution timeMemory
310929MilosMilutinovicDetecting Molecules (IOI16_molecules)C++14
69 / 100
56 ms4076 KiB
/**
 *  author: milos
 *  created: 08.10.2020 16:11:14
**/
#include <bits/stdc++.h>
#include "molecules.h"

using namespace std;

vector<int> find_subset(int l, int u, vector<int> a) {
  int n = (int) a.size();
  vector<pair<int, int>> v;
  for (int i = 0; i < n; i++) {
    v.push_back({a[i], i});
  }
  sort(v.begin(), v.end());
  int sum = v[0].first;
  int i = 0, j = 0;
  while (i < n && j < n) {
    if (sum >= l && sum <= u) {
      break;  
    }
    if (sum <= u && j < n - 1) {
      j++;
      sum += v[j].first;
    } else {
      sum -= v[i].first;
      i++;
    }
  }
  vector<int> ans;
  if (sum >= l && sum <= u) {
    for (int h = i; h <= j; h++) {
      ans.push_back(v[h].second);
    }  
  }
  sort(ans.begin(), ans.end());
  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...