# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
40146 | tmwilliamlin168 | Detecting Molecules (IOI16_molecules) | C++11 | 71 ms | 4648 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "molecules.h"
using namespace std;
typedef long long ll;
vector<int> find_subset( int L, int U, vector<int> W){
vector< int > ord( W.size() ), result;
for( int i = 0; i < W.size(); ++i ){
ord[ i ] = i;
}
sort( ord.begin(), ord.end(), [ & ]( int i, int j ){ return W[ i ] < W[ j ]; } );
ll sum = 0;
for( int lb = 0, rb = 0; lb < W.size(); ++lb ){
while( sum < L and rb < W.size() )
sum += W[ ord[ rb++ ] ];
if( L <= sum and sum <= U ){
for( int i = lb; i < rb; ++i )
result.push_back(ord[ i ]);
break;
}
if( lb < rb ) sum -= W[ ord[ lb ] ];
}
return result;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |