# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
288396 | Ruba_K | Detecting Molecules (IOI16_molecules) | C++14 | 1 ms | 308 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 "molecules.h"
#include<bits/stdc++.h>
using namespace std ;
vector<int> find_subset(int l, int u, vector<int> w) {
int n = w.size() ;
map<int , int > cnt ;
vector<int>v ;
for(auto f : w){
cnt[f]++;
if(cnt[f] == 1)v.push_back(f);
}
if(v.size() == 1){
if(l / v[0] == u / v[0])
return {};
else{
vector<int>ret ;
for(int i = 0 ; i * v[0] < l ; i ++)
ret.push_back(i);
return ret ;
}
}
else{
for(int i = 0 ; i <= cnt[v[0]] ; i ++ ){
long long sum = i * v[0];
long long tmp = sum ;
for(int j = 0 ; j <= cnt[v[1]] ; j ++){
tmp = sum + 1ll * j * v[1];
if(tmp >= l && tmp <= u){
int cnt1 , cnt2;
cnt1 = cnt2 = 0 ;
int c = -1 ;
vector<int>ans;
for(auto f : w){c ++ ;
if(f == v[0] && cnt1 == i)continue ;
if(f == v[1] && cnt2 == j)continue ;
if(f == v[0])cnt1 ++ ;
else cnt2 ++ ;
ans.push_back(c);
}
return ans ;
}
}
}
}
return vector<int>() ;
}
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... |