제출 #232612

#제출 시각아이디문제언어결과실행 시간메모리
232612UserIsUndefinedDetecting Molecules (IOI16_molecules)C++14
9 / 100
6 ms384 KiB
#include <bits/stdc++.h> //#include "molecules.h" using namespace std; long long presum[200005]; std::vector<int> find_subset(int l, int u, std::vector<int> w) { int n = w.size(); vector<pair<int,int>> v; for (int i = 0 ; i < n ; i++){ v.push_back({w[i], i}); } sort(v.begin(), v.end()); for (int i = 0 ; i < n ; i++){ if (i == 0)presum[i] = v[i].first; else presum[i] = presum[i-1] + v[i].first; } vector<int> ans; for (int i = 1 ; i <= n ; i++){ if (presum[i-1] > u)return ans; if (presum[n-1] - presum[n-1-i] < l)continue; long long sum = 0; for (int j = 0 ; j < i ; j++){ sum+= v[j].first; } int x = 0; int y = i; while(y < n){ if ((sum >= l)&&(sum <= u))break; else if (sum < l){ sum+= v[y].first; y++; } else if (sum > u){ sum-= v[x].first; x++; } } for (int j = x ; j < y ; j++){ ans.push_back(v[j].second); } return ans; } }

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

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