Submission #1147641

#TimeUsernameProblemLanguageResultExecution timeMemory
1147641cntourDetecting Molecules (IOI16_molecules)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
using namespace std;

vector<int> find_subset(int l, int u, vector<int> w) {
    int n = w.size();
    vector<pair<long long, int>> molecules(n);
    for(int i = 0; i < n; i++) {
        molecules[i] = {w[i], i};
    }
    
    sort(molecules.begin(), molecules.end());
    
    int left = 0;
    long long sum = 0;
    
    for(int right = 0; right < n; right++) {
        sum += molecules[right].first;
        
        while(left <= right && sum > u) {
            sum -= molecules[left].first;
            left++;
        }
        
        if(sum >= l && sum <= u) {
            vector<int> result;
            for(int i = left; i <= right; i++) {
                result.push_back(molecules[i].second);
            }
            sort(result.begin(), result.end());
            return result;
        }
    }
    
    return vector<int>();
}

int main() {
    int n, l, u;
    cin >> n >> l >> u;
    vector<int> w(n);
    for(int i = 0; i < n; i++) {
        cin >> w[i];
    }
    
    vector<int> result = find_subset(l, u, w);
    
    if(result.empty()) {
        cout << "-1\n";
    } else {
        for(int x : result) {
            cout << x + 1 << " ";
        }
        cout << "\n";
    }
    return 0;
}

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
      |         ^~~~
/usr/bin/ld: /tmp/ccLTaHMK.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cc8ik9G5.o:molecules.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status