TCO15 R2C
Easy
綺麗にかけた (自画自賛)
#define N 200 int d[N]; class YetAnotherCardGame { public: int maxCards( vector <int> a, vector <int> b ) { int n = a.size(); sort(a.rbegin(), a.rend()); sort(b.rbegin(), b.rend()); vector<int> c(2*n); for(int i = 0; i < n; i++) c[i] = a[i]; for(int i = 0; i < n; i++) c[i+n] = b[i]; fill(d, d+N, -INF); d[0] = 0; for(int i = 0; i < n; i++){ for(int l = 0; l < 2; l++){ for(int j = 0; j < n; j++){ for(int k = 0; k < c[j+l*n]; k++){ d[c[j+l*n]] = max(d[c[j+l*n]], d[k]+1); } } } } int res = 0; for(int i = 0; i < N; i++) res = max(res, d[i]); return res; } };