Submission #851282

#TimeUsernameProblemLanguageResultExecution timeMemory
851282askowDetecting Molecules (IOI16_molecules)C++14
0 / 100
1 ms348 KiB
#include <bits/stdc++.h> #include "molecules.h" using namespace std; std::vector<int> find_subset(int l, int u, std::vector<int> w) { int n=w.size(); int subtask1=0; set<int>s; for(int i=0;i<n;i++)s.insert(w[i]); int C=0; for(int i=0;i<n;i++)C+=w[i]; if(C<l)return {}; if(s.size()==1)subtask1=1; if(subtask1){ int pref[n]; pref[0]=w[0]; for(int i=1;i<n;i++)pref[i]=pref[i-1]+w[i]; vector<int>ans; for(int i=0;i<n;i++){ int l=i,r=n-1,p=-1; while(l<=r){ int mid=(l+r)/2; int C=-1; if(i==0)C=pref[mid]; else C=pref[mid]-pref[i-1]; if(C>u)r=mid-1; else { l=mid+1; p=mid; } } if(p==-1)break; if(pref[p]-pref[i-1]>=l){ for(int j=i;j<=p;j++)ans.push_back(j); return ans; } } } }/* int main(){ int n,u,v; cin>>n>>u>>v; vector<int>a(n); for(int i=0;i<n;i++)cin>>a[i]; for(auto it:find_subset(u,v,a))cout<<it<<" "; }*/

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:7:13: warning: control reaches end of non-void function [-Wreturn-type]
    7 |     set<int>s;
      |             ^
#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...