HDU 3622 Bomb Game(2-SAT)
题意:
一个游戏有$n$轮,每轮提供给你两个坐标,你选择其中一个放置炸弹,到最后会放置$n$个炸弹,要保证任意两个炸弹的爆炸区域不会相交,每个炸弹的爆炸半径由你来决定,你的目的是使最小的半径最大。
题解:
考虑二分半径,对于半径$r$,$O(n^2)$的建立约束关系,利用$2-SAT$判断可行性。时间复杂度$O(n^2log(n))$。
代码:
1 |
|
一个游戏有$n$轮,每轮提供给你两个坐标,你选择其中一个放置炸弹,到最后会放置$n$个炸弹,要保证任意两个炸弹的爆炸区域不会相交,每个炸弹的爆炸半径由你来决定,你的目的是使最小的半径最大。
考虑二分半径,对于半径$r$,$O(n^2)$的建立约束关系,利用$2-SAT$判断可行性。时间复杂度$O(n^2log(n))$。
1 | #include<bits/stdc++.h> |