- 问答
- 2023-07-27 11:17:05 @
贪心算法在一些特殊情况下无法得到全局最优解。
以辰小龙的问题为例。黑影军团正在进攻源码圣殿,她需要用最少的攻击次数将敌人全部消灭。
她的火球术每次可以消灭目标格及上下左右共5格内的所有敌人。
如果她先朝敌人最密集的(4,3)坐标发射火球,需要3次攻击才能将消灭所有敌人。
但如果她分别朝(3,2)和(5,4)坐标发射火球,只需要2次攻击就可以消灭所有敌人。
现在8*8棋盘中共有n个敌人,他们的坐标分别为(x1,y1), (x2,y2)...(xn,yn)。
请计算辰小龙最少需要几次攻击,才能消灭所有敌人? 输入数据共有n+1行
第一行有一个整数n,为敌人的数量。
接下来n行每行有2个整数,分别为第i个敌人的坐标(xi,yi)。
n<=64,0<=xi<=8,0<=yi<=8。
输出格式:
一个整数,为消灭敌人所需要的最少攻击次数。
样例:
输入:
6
3 2
3 3
4 2
4 4
5 3
5 4
输出:
2
1 条评论
-
kongjunhan700 LV 0 @ 2023-07-27 21:36:45
......
- 1