Submission #1235704

#TimeUsernameProblemLanguageResultExecution timeMemory
1235704coco2311Detecting Molecules (IOI16_molecules)C++17
9 / 100
0 ms328 KiB
#include "molecules.h"
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;

#define f first
#define s second

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    int N=w.size();
    pair<int,int> arr[N];
    for(int i=0;i<N;i++){
        arr[i].f=w[i];
        arr[i].s=i;
    }
    sort(arr,arr+N);
    int sum=0;
    int it=N;
    for(int i=N-1;i>=0;i--){
        it=i;
        sum+=arr[i].f;
        if(sum>=l){
            break;
        }
    }
    if(sum<l){
        return vector<int> (0);
    }
    int x=N-1;
    while(it>=0){
        if(it<0){
            
        }
        if(sum>=l && sum<=u){
            vector<int> v;
            for(int i=it;i<=x;i++){
                v.push_back(arr[i].s);
            }
            return v;
        }
        sum-=arr[x].f;
        sum+=arr[it].f;
        it--;
        x--;
    }
    return vector<int> (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
      |         ^~~~
#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...