舞蹈链重复覆盖问题
题目
http://acm.fzu.edu.cn/problem.php?pid=1686
题意
中文题,又可以偷懒了!
题目解析
计算出地图上所有怪物的个数,假设为个,给怪物从1到K进行编号。然后枚举每一种神龙攻击的情况,也就是枚举神龙攻击范围的左上角坐标,行坐标一共有种情况,列坐标一共有种情况,所以一共有种攻击情况,假设为。然后构建一个的矩阵,然后第种攻击情况能攻击到第个怪物,则的第行的第个元素为,否则为。最后用舞蹈链对求重复覆盖问题就好了。
代码
1 | /* http://acm.fzu.edu.cn/problem.php?pid=1686 */ |