『连通块计数·二维前缀和』任duty

这篇博客探讨了一种利用二维前缀和解决连通块计数问题的方法。在给定的黑白相间矩形区域中,黑色方块通过四个方向相连,形成无环的连通结构。当关注矩形内的子区域时,需要计算黑色方块形成的连通块数量。解题关键在于将问题转化为森林中树的数量,通过计算点和边的前缀和来得出答案,同时处理矩阵外的边。
摘要由CSDN通过智能技术生成

P r o b l e m \mathrm{Problem} Problem

在画板上有一片黑白相间的矩形区域满足这样的性质:如果认为相同颜色的方块可以在上下左右四个方向连通,那么任意两个黑色方块要么不连通,要么连通但之间只有一条简单路径(不重复经过同一个格子的路径).

这个矩形区域有N行M列,从上到下依次为第1,2,3…N-1,N行,从左到右依次为第1,2,3…M-1,M列.

每次郭神会询问这片矩形区域内的一个子矩形.在只考虑这个子矩形内的像素时(即从子矩形内部不能和子矩形之外的像素相连通),问这个子矩形内的黑色方块组成了多少连通块.

S o l u t i o n \mathrm{Solution} Solution

这道题解题的关键在于:

  • 那么任意两个黑色方块要么不连通,要么连通但之间只有一条简单路径(不重复经过同一个格子的路径).

我们想一下这句话是什么意思,其实就是说明图中不存在环,两点路径路径维护,那么问题就变成了了在一片森林中求解有多少课树。

那么我们就是: S u m ( F o r e s t ) = S u m ( p o i n t ) − S u m ( e d g e ) \mathrm{Sum}(Forest)=\mathrm{Sum}(point)-\mathrm{Sum}(edge) Sum(Forest)=Sum(point)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值