Submission #1226063

#TimeUsernameProblemLanguageResultExecution timeMemory
1226063edga1Detecting Molecules (IOI16_molecules)C++20
100 / 100
36 ms8264 KiB
#include "molecules.h" #include<bits/stdc++.h> #define ll long long using namespace::std; vector<int> find_subset(int l, int u, vector<int> w){ ll n=w.size(); ll ma=0; for(ll i=0; i<n; i++){ if(w[i]>=l && w[i]<=u) return vector<int> (1,i); if(w[i]<l) ma=1; } if(ma==0) return vector<int> (0); vector<ll> mas(n+1,0),mis(n+1,0); vector<pair<ll,ll>> ws(n); for(ll i=0; i<n; i++){ ws[i]={w[i],i}; } sort(ws.begin(),ws.end()); for(ll i=1; i<=n; i++){ mis[i]=mis[i-1]+ws[i-1].first; mas[i]=mas[i-1]+ws[n-i].first; } for(ll k=1; k<=n; k++){ if(mas[k]>=l && mis[k]<=u){ ll sum=mis[k]; ll s=0; while(sum<l){ sum-=ws[s].first; sum+=ws[n-s-1].first; s++; } vector<int> r; for(ll i=s; i<k; i++) r.push_back(ws[i].second); for(ll i=0; i<s; i++) r.push_back(ws[n-i-1].second); return r; } } return vector<int>(0); }

Compilation message (stderr)

molecules.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
molecules_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#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...