제출 #1271616

#제출 시각아이디문제언어결과실행 시간메모리
1271616david_g611Detecting Molecules (IOI16_molecules)C++20
0 / 100
0 ms328 KiB
#include <bits/stdc++.h> #include "molecules.h" using namespace std; using ll=long long; struct element { ll val, idx; const bool operator < (const element &o) const{ return val<o.val; } }; vector<int> find_subset(int l, int u, vector<int> w) { int n=w.size(); element v[n+1]; for(int i=0; i<n; i++) { v[i+1].idx=i; v[i+1].val=w[i]; } sort(v+1, v+n+1); vector<ll> pref(n+1, 0); vector<ll> suf(n+1, 0); pref[1]=v[1].val; suf[n]=v[n].val; for(int i=2; i<=n; i++)pref[i]=pref[i-1]+v[i].val; for(int i=n-1; i>=1; i--)suf[i]=suf[i+1]+v[i].val; vector<int> ans; for(int k=1; k<=n; k++) { if(pref[k]<=u && suf[n-k+1]>=l) { for(int catest=k; catest>=0; catest--) { int catedr=k-catedr; ll val=pref[catest]+suf[n-catedr+1]; if(l<=val && val<=u) { for(int i=1; i<=n; i++) if(i<=catest || i>=n-catedr+1) ans.push_back(v[i].idx); return ans; } } } } return ans; }

컴파일 시 표준 에러 (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...