ABC299 CDE 题解

heyucheng 2023-07-24 20:52:30 4

c题

给定一个只包含 o 和 - 的,长度为n的字符串s,从中找到一个最长的子串,满足第一个或最后一个字符为 -

首先先判断字符串 中 o 和 - 两种字符是否都有。

然后我们可以发现,因为这种字串的特点是头或尾为 - ,中间是 o,所以求最长子串就是求连续 o 的长度的最大值。

d题

二分

如果是 0,可利用 s 的第一个位置是 0 的特性将 l 设为 mid 如果是 1,可利用 s 的第一个位置是 1 的特性将 l 设为 mid

e题

bfs算两点距离

因为离p[i] 最近的黑点和p[i] 的距离是d[i] ,所以说明和 p[i] 的距离小于 d[i] 的点不能为黑。

最后判断一下能否用上述方法染色即可。

{{ vote && vote.total.up }}