Submission #1229402

#TimeUsernameProblemLanguageResultExecution timeMemory
1229402maya_sJelly Flavours (IOI20_jelly)C++20
35 / 100
2102 ms393344 KiB
#include <bits/stdc++.h> using namespace std; typedef int ll; ll dp[201][501][501][2]; int find_maximum_unique(int x, int y, vector<int> A, vector<int> B) { ll n = A.size(); vector<ll> a(n+1), b(n+1); for(ll i = 0; i < n; i++) a[i+1] = A[i], b[i+1] = B[i]; for(ll i = 1; i <= n; i++){ for(ll sum_a = 0; sum_a <= x; sum_a++){ for(ll sum_b = 0; sum_b <= y; sum_b++){ dp[i][sum_a][sum_b][0] = dp[i][sum_a][sum_b][1] = max(dp[i-1][sum_a][sum_b][0], dp[i-1][sum_a][sum_b][1]); if(sum_a - a[i] >= 0) dp[i][sum_a][sum_b][0] = max(dp[i][sum_a][sum_b][0], max(dp[i-1][sum_a - a[i]][sum_b][0], dp[i-1][sum_a - a[i]][sum_b][1]) + 1); if(sum_b - b[i] >= 0) dp[i][sum_a][sum_b][1] = max(dp[i][sum_a][sum_b][1], max(dp[i-1][sum_a][sum_b - b[i]][0], dp[i-1][sum_a][sum_b - b[i]][1]) + 1); } } } return max(dp[n][x][y][0], dp[n][x][y][1]); }
#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...