Submission #1054974

#TimeUsernameProblemLanguageResultExecution timeMemory
1054974vjudge1Catfish Farm (IOI22_fish)C++17
12 / 100
49 ms20328 KiB
#include "fish.h" #include <bits/stdc++.h> using namespace std; using ll = long long; using vi = vector<int>; using vll = vector<ll>; ll max_weights(int n, int m, vi X, vi Y, vi W) { vll S(n + 1, 0); for(int i = 0; i < m; ++i) { S[X[i]] += W[i]; } vector<vll> DP(n + 1, vll(3, 0)); for(int i = 0; i < n; ++i) { for(int j = 0; j < 2; ++j) { DP[i + 1][j + 1] = max(DP[i + 1][j + 1], DP[i][j]); /// nu fac nimic } ///ult pier la i - 1 - j, acum construim la i => distanta 1 + j DP[i + 1][0] = max(DP[i + 1][0], DP[i][0] - S[i] + S[i + 1]); DP[i + 1][0] = max(DP[i + 1][0], DP[i][1] + S[i + 1]); ll uv = S[i + 1]; if(i) uv += S[i - 1]; DP[i + 1][0] = max(DP[i + 1][0], DP[i][2] + uv); } ll re = 0; for(auto it : DP[n]) re = max(re, it); return re; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...