Submission #370744

#TimeUsernameProblemLanguageResultExecution timeMemory
370744MilosMilutinovicJelly Flavours (IOI20_jelly)C++14
0 / 100
42 ms24556 KiB
#include "jelly.h" #include <bits/stdc++.h> using namespace std; void ckmax(int& a, int b) {a = max(a, b);} void ckmin(int& a, int b) {a = min(a, b);} const int N = 12; int dp[N][501][501]; int find_maximum_unique(int x, int y, vector<int> a, vector<int> b) { int n = (int) a.size(); for (int i = 0; i < n; i++) { for (int xx = 0; xx <= x; xx++) { for (int yy = 0; yy <= y; yy++) { dp[i][xx][yy] = 0; } } } if (x >= a[0]) dp[0][x - a[0]][y] = 1; if (y >= b[0]) dp[0][x][y - b[0]] = 1; for (int i = 1; i < n; i++) { //if (x >= a[0]) ckmax(dp[i][x - a[i]][y], 1); //if (y >= b[0]) ckmax(dp[i][x][y - b[i]], 1); for (int j = i - 1; j < i; j++) { for (int xx = 0; xx <= x; xx++) { for (int yy = 0; yy <= y; yy++) { if (xx + a[i] <= x) { ckmax(dp[i][xx][yy], dp[j][xx + a[i]][yy] + 1); } if (yy + b[i] <= y) { ckmax(dp[i][xx][yy], dp[j][xx][yy + b[j]] + 1); } ckmax(dp[i][xx][yy], dp[j][xx][yy]); } } } } int ans = 0; for (int i = n - 1; i < n; i++) { for (int xx = 0; xx <= x; xx++) { for (int yy = 0; yy <= y; yy++) { ans = max(ans, dp[i][xx][yy]); } } } return ans; }
#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...