Submission #675011

#TimeUsernameProblemLanguageResultExecution timeMemory
675011Ahmed57Detecting Molecules (IOI16_molecules)C++14
100 / 100
150 ms15156 KiB
#include <bits/stdc++.h> using namespace std; vector<int> find_subset(int l,int u,vector<int> w){ set<long long> d; vector<pair<long long,int>> v; for(int i = 0;i<w.size();i++){ v.push_back({w[i],i}); } sort(v.begin(),v.end()); long long r = 0 , sum = 0; for(int i = 0;i<v.size();i++){ while(r<v.size()&&sum+v[r].first<=u){sum+=v[r].first;d.insert(v[r].second);r++;} if(sum>=l){ vector<int> ans; for(auto j:d)ans.push_back(j); return ans; } if(r==i){ r = i+1; continue; } auto it = d.lower_bound(v[i].second); d.erase(it); sum-=v[i].first; } vector<int>empt; return empt; } /* int main(){ vector<int> ans = find_subset(2,6,{7,7,7,7,7}); for(auto i:ans)cout<<i<<" "; } */

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:8:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    8 |     for(int i = 0;i<w.size();i++){
      |                   ~^~~~~~~~~
molecules.cpp:13:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<long long int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |     for(int i = 0;i<v.size();i++){
      |                   ~^~~~~~~~~
molecules.cpp:14:16: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |         while(r<v.size()&&sum+v[r].first<=u){sum+=v[r].first;d.insert(v[r].second);r++;}
      |               ~^~~~~~~~~
#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...