2020杭电多校第二场
Posted likunhong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020杭电多校第二场相关的知识,希望对你有一定的参考价值。
1010.Lead of Wisdom
暴搜。。。我去除了比某一同类装备4个属性都低的装备
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define rep(i, a, b) for (register int i = a; i <= b; i++) typedef struct clo { int a, b, c, d; } cloth; int n, k, A, B, C, D, T; ll ans; vector<cloth> p[55]; void dfs(int x, int a, int b, int c, int d) { while (x <= k && p[x].empty()) x++; if (x > k) { ans = max(ans, 1ll * a * b * c * d); return; } for (vector<cloth>::iterator it = p[x].begin(); it != p[x].end(); it++) dfs(x + 1, a + (*it).a, b + (*it).b, c + (*it).c, d + (*it).d); } inline void solve() { cin >> n >> k; rep(i, 1, k) p[i].clear(); ans = 100000000; rep(i, 1, n) { cin >> T >> A >> B >> C >> D; int flag = 1; for (vector<cloth>::iterator it = p[T].begin(); it != p[T].end(); it++) { if (A <= (*it).a && B <= (*it).b && C <= (*it).c && D <= (*it).d) { flag = 0; break; } } if (flag) p[T].push_back({A, B, C, D}); } dfs(1, 100, 100, 100, 100); cout << ans << endl; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t = 1; cin >> t; while (t--) { solve(); } }
以上是关于2020杭电多校第二场的主要内容,如果未能解决你的问题,请参考以下文章
[2020杭电多校第二场]1005 New Equipments(费用流)
2022杭电多校第二场 A.Static Query on Tree(树剖)