标签:二分图 素数 bsp 分层 属性 strong 二分图匹配 枚举 直接
题解
此题非常坑人, 不仔细看三四遍题目就很容易搞错出题人的意思
所为“至多一项属性值使得两张卡牌该项属性值互质”, 就是至少两项属性值有公共质因数。
直接的想法是暴力枚举连边, 然后二分图匹配。 由于是分层图, dinic可以跑的很快。
再看一下匹配的条件, 我们发现可以可以在图中间加一排点, 每个点表示一个素数对$(p_1, p_2)$, 对于每张卡牌$(A, B, C)$, 满足$(A|p_1, B|p_2)$或$(B|p_1, C|p_2)$或$(A|p_1, C|p_2)$, 那么可在这两点间连一条边。
再跑dinic就能过。
标签:二分图 素数 bsp 分层 属性 strong 二分图匹配 枚举 直接
原文地址:https://www.cnblogs.com/2016gdgzoi509/p/11154696.html