02 2018 档案
摘要:题目链接 了解题意之后,没有思路。。参考了别人的博客,这个题目的解题思路就是维护分量, 将原来的一个长度分解成三个长度,然后加以维护,维护通过pushUp操作来完成,维 护的步骤按照价格的高低。 #include<cstdio> #include<algorithm> using namespace
阅读全文
摘要:题目链接 这是求面积并的题目,刚开始我的思路是将挖去的矩形的入边和出边覆盖效果颠倒, 即入边-1,出边+1,后来调试到爆炸,发现这是错误的做法。。原因就是对最简单 的面积并问题没有搞清楚。刚开始接触扫描线的时候我就有一个问题,为什么覆盖 次数不需要向子区间传递,但是我没有仔细去想这个问题,直到遇到这
阅读全文
摘要:题目链接 求周长并,思路和注意事项与求面积并类似,我用了最简单的思路,即x轴做一次线段树,y轴做一次线段树。 还有一种方法,只做一次线段树,在做线段树的同时求另一个方向的长度,大概的想法我知道,不过在左右区间合并 这个问题上不是很理解。 做了两个线段树的题目,分别是求面积并和周长并。这些问题是几何问
阅读全文
摘要:题目链接 要求矩形的面积并 代码不复杂,主要要理解扫描线的思想以及一些细节的处理。 首先需要将接收到的x坐标离散化,方法就是排序去重。接下来的线段树建立在这个 关于x坐标的数组上,这很关键。线段树的节点代表一段区间,这个区间是由x坐标数组的下标 来构成的。更新的时候就根据水平线段的左右x坐标获得区间
阅读全文
摘要:这是三段非常相似的代码。二分查找比较明确,难懂的是下面的两段代码。大体的思路沿袭二分的想法,区别就在于搜索左右子区间的条件不同。 可以注意到一个特点,lowerBound返回的下标对应的值一定大于等于k,循环结束的条件是l==r,所以满足条件,upperBound类似。 写成递归形式可能更容易理解,
阅读全文
摘要:不得已又挖了一个坑。。想来学习线段树也有一段时间了,也有了些了解,但是在做题的 时候还是磕磕碰碰的,还是不够熟练,还是要多做题(水题除外),多思考。 这是一道典型的线段树区间更新,一定要使用延迟标记,同时又要使用区间合并。 区间合并的做法和poj3667 Hotel这题是一样的。起先我想都使用线段树
阅读全文
摘要:最近几天都在学习git,一个分布式版本管理软件。 学习git的原因是平时在写代码的时候修改代码总是让我焦头烂额, 所以我希望通过学习git能够解决这个问题(目前还远远达不到这个 目标= = )。下面来梳理一下git学习过程中的一些概念。 首先我发现我对版本的理解并没有我认为的那么到位,导致了在学 习
阅读全文

浙公网安备 33010602011771号