P2285 [HNOI2004]打鼹鼠

题意简述

一个鼠可以用一个三元组((t_i,x_i,y_i))表示,指这个鼠会在(t_i)时刻出现在((x_i,y_i))
给定方格大小(n imes n(n le 1000)) 和 鼠的个数(m(m le 10000)),你现在有一个机器人,(0)时刻可以放在任意位置,每次可以走到上下左右,求最多能逮到鼠的个数。

简单口胡

这种题能蓝?
显然两点之间能否在(t)时间到达只与其距离有关。

(i)鼠和(j)鼠之间的距离为(operatorname{dis}(i,j) = |x_i - x_j| + |y_i - y_j|)

如果(t_j - t_i (t_j > t_i) ge operatorname{dis}(i,j)),那么可以从(i o j),否则不行。

(dp_i)为走到第(i)个鼠的最大答案,考虑转移,易得:

[dp_i = max_{1 le j < i} {{dp_j mid dis(i,j) le t_i - t_j}} ]

初始化(dp_i = 1)(mathcal{O}(m ^ 2))

原文地址:https://www.cnblogs.com/luyiming123blog/p/P2285.html