Submission #568158

#TimeUsernameProblemLanguageResultExecution timeMemory
568158definitelynotmeeDetecting Molecules (IOI16_molecules)C++98
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define all(x) x.begin(),x.end()
using ll = long long;
using pii = pair<int,int>;
using pll = pair<ll,ll>;
template<typename T>
using matrix = vector<vector<T>>;

vector<int> find_subset(int l, int u, vector<int> v){
    ll sum = 0;
    int n = v.size();
    vector<ll> w(n);
    for(int i = 0; i < n; i++)
        w[i] = v[i];
    
    vector<int> o(n);
    iota(all(o),0);
    sort(all(o),[&](int a, int b){
        return w[a] < w[b];
    });
    int ct = 0;
    for(int i = 0; i < n; i++){
        if(sum+w[o[i]] > u)
            break;
        ct++;
        sum+=w[o[i]];
    }
    if(ct == n && sum < l)
        return{};
    vector<int> resp;
    while(sum < l && ct){
        resp.push_back(o.back());
        sum+=w[o.back()]-w[o[ct-1]];
        o.pop_back();
        ct--;
    }
    if(sum < l || sum > u)
        return {};
    
    for(int i = 0; i < ct; i++)
        resp.push_back(o[i]);
    return resp;
}

int main(){
    int n, l, u;
    cin >> n>> l >> u;
    vector<int> in(n);
    for(int&i : in)
        cin >> i;
    vector<int> ret = find_subset(l,u,in);
    cout << ret.size() << '\n';
    for(int i : ret)
        cout << i << ' ';
    cout << '\n';
}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccijWUYf.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccvsd0se.o:molecules.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status