二维差分模板

        (看了y总的视频对差分浅浅的理解)

        假定有a[][]数组和b[][]数组,然后a[][]数组是b[][]数组的前缀和数组,那么b[][]数组是a[][]数组的差分数组。

        那么b[][]数组是a[][]数组的差分数组

        差分主要还是解决怎么在规定区域加上特定的数的(个人认为)

        那么“补丁”又该怎么打上呢?

        b[x1][y1]+=c;b[x1][y2+1]-=c;b[x2+1][y1]-=c;b[x2+1][y2+1]+=c;

        具体怎么为什么这样呢?

        可以自己画个矩形看看(本人画的图太抽象了)

        附上函数模板:

        

void insert(int x1,int y1,int x2,int y2,int c){
    b[x1][y1]+=c;
    b[x2+1][y1]-=c;
    b[x1][y2+1]-=c;
    b[x2+1][y2+1]+=c;
}

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值