2023大厂真题提交网址(含题解):
www.CodeFun2000.com(http://101.43.147.120/)
最近我们一直在将收集到的机试真题制作数据并搬运到自己的OJ上,供大家免费练习,体会真题难度。现在OJ已录入50+道2023年最新大厂真题,同时在不断的更新。同时,可以关注"塔子哥学算法"公众号获得每道题的题解。
题目大意:
给你
n
n
n个人,
m
m
m个装备。每个装备可以给最多指定的两个人(
a
1
,
a
2
a_1,a_2
a1,a2).每个装备有个战斗力。每个装备只能给一个人,一个人只能有一个装备。问你战斗力总和最大.
m
≤
n
≤
1
e
5
m \leq n \leq 1e5
m≤n≤1e5
题目思路:
建图十分像一个二分图最大匹配。就算跑网络流最快好像也只是 O ( n n ) O(n\sqrt{n}) O(nn).
正解:
发现每个装备只给两个人。那么考虑将人变成点,装备变成边。那么最终肯定是选出一个生成子图。使得边权最大。考虑每个连通块,最多允许含有一个环。就是基环树。所以就是贪心求最大基环生成树.
没做过这题想到应该挺难的。