Submission #737318

#TimeUsernameProblemLanguageResultExecution timeMemory
737318AmaarsaaDetecting Molecules (IOI16_molecules)C++14
69 / 100
1084 ms15924 KiB
//#include "molecules.h" #include<bits/stdc++.h> using namespace std; using ll = long long; vector<int> find_subset(int l, int u, vector<int> w) { ll p, sum, s, j, r, i; vector < pair < int, int > > v; for ( i = 0; i < w.size(); i ++) v.push_back(make_pair(w[i], i)); sort (v.begin(), v.end()); s = 0; map < ll, ll > a; a[0] = v[0].first; w[0] = a[0]; for ( i = 1; i < w.size(); i ++) { w[i] = v[i].first; a[i] = a[i - 1] + v[i].first; } vector < int > Ans; Ans.clear(); for (i = 0; i < w.size(); i ++) { p = upper_bound(w.begin(), w.end(), w[i] + (u - l)) - w.begin(); p --; sum = a[p] - a[i - 1]; while (sum > u && p > i) { sum -= w[p]; p --; } if (sum >= l && sum <= u) { for ( j = i; j <= p; j ++) { Ans.push_back(v[j].second); } break; } } return Ans; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:10:17: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   10 |  for ( i = 0; i < w.size(); i ++) v.push_back(make_pair(w[i], i));
      |               ~~^~~~~~~~~~
molecules.cpp:16:17: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   16 |  for ( i = 1; i < w.size(); i ++) {
      |               ~~^~~~~~~~~~
molecules.cpp:22:16: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |  for (i = 0; i < w.size(); i ++) {
      |              ~~^~~~~~~~~~
molecules.cpp:8:13: warning: variable 's' set but not used [-Wunused-but-set-variable]
    8 |  ll p, sum, s, j, r, i;
      |             ^
molecules.cpp:8:19: warning: unused variable 'r' [-Wunused-variable]
    8 |  ll p, sum, s, j, r, 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...