Submission #287627

#TimeUsernameProblemLanguageResultExecution timeMemory
287627Ruba_KDetecting Molecules (IOI16_molecules)C++14
0 / 100
1 ms256 KiB
#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 > mp; for(auto f : w) mp[f]++; int first , second ; int n1 , n2 ; first = mp[w[0]] , n1 = w[0]; if(mp.size() == 1)second = 0 , n2 = 0 ; else { for(auto f : mp){ if(f.first != n1){ n2 = f.first ; second = f.second ; break; } } } vector<int>ans ; for(int i = 0 ; i <= first ; i ++){ for(int j = 0 ; j <= second ; j ++){ int sum = j * n1 + i * n2 ; if(sum >= l && sum <= u){ map<int , int > cnt ; for(int c = 0 ; c < n ; c ++){ if(w[c] == n1 && cnt[n1] == i)continue ; if(w[c] == n2 && cnt[n2] == j)continue ; cnt[w[c]]++; ans.push_back(c ); } } if(ans.size())break; } if(ans.size())break; } return ans ; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:34:27: warning: 'second' may be used uninitialized in this function [-Wmaybe-uninitialized]
   34 |         for(int j = 0 ; j <= second ; j ++){
      |                         ~~^~~~~~~~~
#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...