Submission #493413

#TimeUsernameProblemLanguageResultExecution timeMemory
493413Spade1Detecting Molecules (IOI16_molecules)C++14
0 / 100
1 ms204 KiB
#include<bits/stdc++.h>
#include "molecules.h"
#define ll long long
#define pii pair<int, int>
#define st first
#define nd second
#define pb push_back
using namespace std;

vector<int> find_subset(int l, int u, vector<int> w) {
    int n = w.size();

    vector<pair<ll, int>> v;
    for (int i = 0; i < n; ++i) {
        v.pb({w[i], i + 1});
    }

    sort(v.begin(), v.end());

    ll sum = 0;
    int s = 0;
    for (int i = 0; i < n; ++i) {
        sum += v[i].st;
        if (sum > u && s <= i) {
            sum -= v[s].st;
            ++s;
        }
        if (sum <= u && sum >= l) {
            vector<int> tmp;
            for (int j = s; j <= i; ++j) tmp.pb(v[j].nd);
            return tmp;
        }
    }

    return vector<int>();
}
#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...