Submission #1102284

#TimeUsernameProblemLanguageResultExecution timeMemory
1102284ro9669Nile (IOI24_nile)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #define fi first #define se second #define all(v) v.begin() , v.end() #define sz(v) int(v.size()) #define unq(v) sort(all(v)); v.resize(unique(all(v)) - v.begin()); #include "nile.h" using namespace std; typedef long long ll; typedef pair<int , int> ii; typedef pair<long long , int> lli; const int maxN = int(2e5)+7; ll dp[maxN]; vector<int> id; vector<ll> res; vector<long long> calculate_costs(vector<int> w , vector<int> a , vector<int> b , vector<int> e){ int n = sz(w); id.resize(n); for (int i = 0 ; i < n ; i++) id[i] = i; sort(all(id) , [](int x , int y){ return w[x] < w[y]; }); for (int d : e){ dp[0] = 0; for (int i = 0 ; i < n ; i++){ ll s = 0; int x = INT_MAX; dp[i + 1] = ll(1e18); for (int j = i ; j >= 0 ; j--){ s += b[id[j]]; x = min(x , a[id[j]] - b[id[j]]); if (w[id[i]] - w[id[j]] <= d){ if ((i - j)&1){ dp[i + 1] = min(dp[i + 1] , dp[j] + s); } else{ dp[i + 1] = min(dp[i + 1] , dp[j] + s + 1ll * x); } } else{ break; } } } res.push_back(dp[n]); } return res; }

Compilation message (stderr)

nile.cpp: In lambda function:
nile.cpp:25:17: error: 'w' is not captured
   25 |          return w[x] < w[y];
      |                 ^
nile.cpp:24:21: note: the lambda has no capture-default
   24 |     sort(all(id) , [](int x , int y){
      |                     ^
nile.cpp:20:47: note: 'std::vector<int> w' declared here
   20 | vector<long long> calculate_costs(vector<int> w , vector<int> a , vector<int> b , vector<int> e){
      |                                   ~~~~~~~~~~~~^
nile.cpp:25:24: error: 'w' is not captured
   25 |          return w[x] < w[y];
      |                        ^
nile.cpp:24:21: note: the lambda has no capture-default
   24 |     sort(all(id) , [](int x , int y){
      |                     ^
nile.cpp:20:47: note: 'std::vector<int> w' declared here
   20 | vector<long long> calculate_costs(vector<int> w , vector<int> a , vector<int> b , vector<int> e){
      |                                   ~~~~~~~~~~~~^