Submission #1210425

#TimeUsernameProblemLanguageResultExecution timeMemory
1210425tkm_algorithmsCatfish Farm (IOI22_fish)C++20
0 / 100
12 ms2368 KiB
/** * In the name of Allah * We are nothing and you're everything * Ya Muhammad! **/ #include <bits/stdc++.h> #include "fish.h" using namespace std; using ll = long long; using ull = uint64_t; #define all(x) begin(x), end(x) #define sz(x) (int)(x).size() //#define int long long const char nl = '\n'; const int mx = 301; const ll inf = 0x3f3f3f3f3f3f3f3fll; const int mod = 1e9+7; ll dp[mx][10][10], p[mx][10]; long long max_weights(int N, int M, vector<int> X, vector<int> Y, vector<int> W) { for (int i = 0; i < M; ++i) { p[X[i]][Y[i]+1] += W[i]; } for (int i = 0; i < N; ++i) { for (int j = 1; j <= 9; ++j)p[i][j] += p[i][j-1]; } if (N == 1)return p[0][9]; // memset(dp, 0, sizeof dp); ll res = p[0][9]; for (int i = 0; i <= 9; ++i) { for (int j = 0; j <= 9; ++j) { if (i > j)dp[1][i][j] = p[1][i]-p[1][j]; else dp[1][i][j] = p[0][j]-p[0][i]; res = max(res, dp[1][i][j]); } } for (int i = 2; i < N; ++i) { for (int j = 0; j <= 9; ++j) for (int k = 0; k <= 9; ++k) for (int l = 0; l <= 9; ++l) { ll cur = dp[i-1][k][l]; if (k > j) { cur += p[i][k]-p[i][j]; } // if (j > k && j > l)cur += p[i-1][j]-p[i-1][max(l, k)]; dp[i][j][k] = max(cur, dp[i][j][k]); res = max(res, cur); } } return res; } // int main() { // int n, m; // cin >> n >> m; // vector<int> x(m), y(m), w(m); // for (int i = 0; i < m; ++i)cin >> x[i] >> y[i] >> w[i]; // cout << max_weights(n, m, x, y, w); // }
#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...