摘要: 树状数组(Binary Indexed Tree,BIT) 是能够完成下述操作的数据结构。 给一个初始值全为 0 的数列 a1, a2, ..., an (1)给定 i,计算 a1+a2+...+ai (2)给定 i 和 x,执行 ai += x 1.基于线段树的实现 如果使用线段树,只需要做少许修 阅读全文
posted @ 2019-05-14 21:47 莫莫君不恋爱 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 头文件:#include<iostream> 函数原型:iterator unique(iterator it_1,iterator it_2); 作用:元素去重,即”删除”序列中所有相邻的重复元素(只保留一个)。此处的删除,并不是真的删除,而是指不停的把后面不重复的元素移到前面来,也可以说是用不重 阅读全文
posted @ 2019-05-14 20:35 莫莫君不恋爱 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 准备好 w * h 的数组,并记录是否有直线通过,然后利用深度优先搜索可以求出被分割出的区域的个数。但是这个问题中 w 和 h 最大为10000000,所以没办法创建 w * h 的数组。因此我们可以使用坐标离散化这一技巧。 如上图所示,将前后没有变化的行列消除后并不会影响区域的个数。 数组里只需要 阅读全文
posted @ 2019-05-14 20:15 莫莫君不恋爱 阅读(391) 评论(0) 推荐(0) 编辑