3
long long maxPoints(vector<vector<int>> &points) {4
vector<vector<long long>> dp(points.size(), vector<long long>(points[0].size(), -1));6
for (int i = 0; i < points[0].size(); ++i) {7
dp[0][i] = points[0][i];10
for (int i = 1; i < points.size(); ++i) {11
for (int j = 0; j < points[i].size(); ++j) {12
for (int k = 0; k < points[i].size(); ++k) {13
dp[i][j] = max(dp[i][j], dp[i - 1][k] - abs(k - j) + points[i][j]);18
long long max_ans = -1;19
for (const auto v : dp.back()) {20
max_ans = max(max_ans, v);