![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
双指针
文章平均质量分 65
胡牧之.
此人很懒,但还添加了简介
展开
-
Corral the Cows赶牛入圈(二维离散化)
题目原题链接问题描述分析先考虑直观思路,使用二维前缀和,再二分边长,但是在二维前缀和这一步就会导致时间空间的双爆炸,根据观察,发现数据只有500个,所以可以考虑离散化。但这里的特别之处是这里是一个二维平面,所以我们的问题是如何对二维平面中的点进行离散化以及如何使用离散化的结果来判断边长是否满足要求。二维离散化将横坐标依序排好后,记录横坐标值与下标的对应关系,注意去重,因为我们之后是想借助这个相对关系来对点处理,不去重就无法保证相对关系了;对纵坐标采取相同的操作。如果一个点之前的坐标是原创 2022-05-21 09:36:47 · 293 阅读 · 0 评论 -
2022牛客寒假算法基础集训营4 A(双指针)
题目原题链接问题描述给定一段仅由大写字母组成且长度为nnn的字符串,我们将一个至少包含kkk个字母RRR且不含字母PPP的连续的字符串视为一种合法方案,问总共有多少种合法方案。分析由于合法方案中是不含字母PPP的,所以我们可以以PPP作为分割点进行分割字符串,我们以l,rl,rl,r作为分割出的字符串的左右边界,接下来的问题就是求在这个字符串中有多少个子字符串至少包含kkk个RRR。我们可以采用双指针来解决问题iii作为左端点,jjj作为右端点inline void f(){ int原创 2022-02-09 16:05:35 · 301 阅读 · 0 评论