题意:
给定一个N*N的网格,现在M组操作,一种操作时改变网格上的某个单点的权值,另外一种操作是求到一点曼哈顿距离为小于等于k的所有的权值和,初始化网格所有点的权值为0。
思路:
裸二维线段树或树状数组,但是考虑到数据量,不可能建树,故采用树状数组带 hash 的思路做。
树状数组求区间和,需要利用容斥的思想,在二维中也是如此。
代码:
题意:
给定一个N*N的网格,现在M组操作,一种操作时改变网格上的某个单点的权值,另外一种操作是求到一点曼哈顿距离为小于等于k的所有的权值和,初始化网格所有点的权值为0。
思路:
裸二维线段树或树状数组,但是考虑到数据量,不可能建树,故采用树状数组带 hash 的思路做。
树状数组求区间和,需要利用容斥的思想,在二维中也是如此。
代码: