Submission #1302121

#TimeUsernameProblemLanguageResultExecution timeMemory
1302121lunarechoDetecting Molecules (IOI16_molecules)C++20
100 / 100
34 ms5300 KiB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
vector<int> find_subset(int lower, int upper, vector<int> weights) {
    int n = weights.size();
    vector<pair<ll,int>> p(n); 
    for(int i=0;i<n;++i) {
        p[i] = {weights[i], i};
    }
    sort(p.begin(), p.end());
    bool f = false;
    int l = 0, r = 0;
    ll s = 0;
    while(r < n) {
        s += p[r].first;
        while(s > upper) {
            s -= p[l].first;
            ++l;
        }
        if(lower <= s && s <= upper) {
            f = true;
            break;
        }
        ++r;
    }
    vector<int> ans;
    if(f) {
        for(int i=l;i<=r;++i) {
            ans.push_back(p[i].second);
        }
        sort(ans.begin(), ans.end());
    }
    return ans;
}

Compilation message (stderr)

molecules.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
molecules_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#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...