제출 #468575

#제출 시각아이디문제언어결과실행 시간메모리
468575PiejanVDCDetecting Molecules (IOI16_molecules)C++17
컴파일 에러
0 ms0 KiB
#include <molecules.h> #include <bits/stdc++.h> using namespace std; vector<long long> find_subset(int ll, int uu, vector<int> ww) { long long n = ww.size(),l=ll,u=uu; vector<pair<long long,long long>>w(n); for(long long i = 0 ; i < n ; i++) { w[i].first=ww[i],w[i].second=i; } long long cnt=0; sort(w.begin(),w.end()); long long left=0,right=0; while(right < n) { if(cnt + w[right].first > u) break; cnt+=w[right].first; right++; } if(right == 0) return {}; bool f=false; while(right <= n) { if(cnt >= l && cnt <= u) { f=true; break; } if(right == n) break; cnt+=w[right].first; cnt-=w[left].first; right++,left++; } vector<long long>ans={}; if(f) { for(; left < right ; left++) ans.push_back(w[left].second); } return ans; } /*signed main() { long long n,l,u; cin >> n >> l >> u; vector<long long>w(n); for(auto &z : w) cin >> z; vector<long long>v = find_subset(l,u,w); for(auto x : v) cout << x << " "; }*/

컴파일 시 표준 에러 (stderr) 메시지

molecules.cpp:5:19: error: ambiguating new declaration of 'std::vector<long long int> find_subset(int, int, std::vector<int>)'
    5 | vector<long long> find_subset(int ll, int uu, vector<int> ww) {
      |                   ^~~~~~~~~~~
In file included from molecules.cpp:1:
molecules.h:5:18: note: old declaration 'std::vector<int> find_subset(int, int, std::vector<int>)'
    5 | std::vector<int> find_subset(int l, int u, std::vector<int> w);
      |                  ^~~~~~~~~~~