| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1332497 | opeleklanos | Catfish Farm (IOI22_fish) | C++20 | 0 ms | 0 KiB |
ll max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w){
vector<ll> arr;
arr.assign(n, 0);
if(n == 2){
return max(arr[0], arr[1]);
}
for(ll i = 0; i<m; i++) arr[x[i]] = w[i];
vector<ll> dp(n, 0);
dp[0] = arr[1];
dp[1] = arr[0] + arr[2];
ll mxPier = 0;
for(ll i = 2; i<n; i++){
if(i<n-1) dp[i] = max((i>=3?dp[i-3]:0) + arr[i-1]+ arr[i+1], max(dp[i-2] + arr[i+1], dp[i-1] + arr[i+1]-arr[i]));
else dp[i] = ((i>=3)?dp[i-3]:0) + arr[i-1];
}
ll mx = 0;
for(ll i = 0; i<n; i++) mx = max(mx, dp[i]);
return mx;
}