Submission #290721

#TimeUsernameProblemLanguageResultExecution timeMemory
290721aymanrsDetecting Molecules (IOI16_molecules)C++14
69 / 100
1083 ms4600 KiB
#include <bits/stdc++.h> using namespace std; vector<int> find_subset(int l, int u, vector<int> w){ vector<pair<int, int>> c(w.size()); for(int i = 0;i < w.size();i++) c[i] = {w[i], i}; sort(c.begin(), c.end()); long long pre[w.size()]; pre[0] = c[0].first; for(int i = 1;i < c.size();i++) pre[i] = pre[i-1] + c[i].first; for(int window = 0;window < c.size();window++){ for(int i = 0;i+window < c.size();i++){ if(i > 0){ if(pre[i + window] - pre[i-1] >= l && pre[i + window] - pre[i-1] <= u){ vector<int> ans(window+1); for(int j = i;j <= i+window;j++) ans[j-i] = c[j].second; return ans; } } if(i == 0){ if(pre[i + window] >= l && pre[i + window]<= u){ vector<int> ans(window+1); for(int j = i;j <= i+window;j++) ans[j-i] = c[j].second; return ans; } } } } return {}; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:5:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 |  for(int i = 0;i < w.size();i++) c[i] = {w[i], i};
      |                ~~^~~~~~~~~~
molecules.cpp:9:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    9 |  for(int i = 1;i < c.size();i++) pre[i] = pre[i-1] + c[i].first;
      |                ~~^~~~~~~~~~
molecules.cpp:10:28: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   10 |  for(int window = 0;window < c.size();window++){
      |                     ~~~~~~~^~~~~~~~~~
molecules.cpp:11:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |   for(int i = 0;i+window < c.size();i++){
      |                 ~~~~~~~~~^~~~~~~~~~
#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...