Submission #1078401

#TimeUsernameProblemLanguageResultExecution timeMemory
1078401sqrteipiDetecting Molecules (IOI16_molecules)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define int long long signed[] find_subset(signed l, signed u, signed[] w) { int n = w.size(), r = u; vector<pair<int, int>> vec; for (int i=0; i<n; i++) { int k = w[i]; vec.push_back({k, i}); } sort(vec.begin(), vec.end()); int mi = 0, ma = 0, li = 0, ri = n - 1; while (li < n) { mi += vec[li].first, ma += vec[ri].first; if (l <= mi && mi <= r) { vector<int> ans; ans.push_back(li+1); for (int i=0; i<=li; i++) ans.push_back(vec[i].second); return ans; } if (l <= ma && ma <= r) { vector<int> ans; ans.push_back(li+1); for (int i=ri; i<n; i++) ans.push_back(vec[i].second); return ans; } if (mi <= l && r <= ma) { int sum = mi - vec[li].first; for (int i=li; i<n; i++) { sum += vec[i].first; if (l <= sum && sum <= r) { vector<int> ans; ans.push_back(li+1); for (int j=i-li; j<=i; j++) ans.push_back(vec[i].second); return ans; } sum -= vec[i-li].first; } } li++, ri--; } return {}; }

Compilation message (stderr)

molecules.cpp:5:7: error: structured binding declaration cannot have type 'int'
    5 | signed[] find_subset(signed l, signed u, signed[] w) {
      |       ^~
molecules.cpp:5:7: note: type must be cv-qualified 'auto' or reference to cv-qualified 'auto'
molecules.cpp:5:7: error: empty structured binding declaration
molecules.cpp:5:10: error: expected initializer before 'find_subset'
    5 | signed[] find_subset(signed l, signed u, signed[] w) {
      |          ^~~~~~~~~~~