扫描线
Master.Yi
学习他人,提升自己;
提升自己,帮助他人。
展开
-
模拟赛20200210【扫描线(单调性),最小割,基环树染色(树哈希+Polya)】
T1: 题解: C类点可以不用平衡树维护,因为B类点的a[i]a[i]a[i]一定是后缀最小值,所以只需要在询问的时候把a[j]<a[i]a[j]<a[i]a[j]<a[i]的点的贡献全部删掉就可以了。在计算C类点的贡献时只需要将a[j]a[j]a[j]到前缀最大值区间加1就可以了。 考试的时候想到单调性但是搞来搞去没搞出来(被“浙江省选模拟赛”标题吓住导致轻易自闭。。),...原创 2020-02-10 23:27:21 · 560 阅读 · 0 评论 -
省选模拟赛20200131 T3 数星星【三角形二维数点】
题目描述: 一个二维平面直角坐标系,其中有 N 颗星星(坐标为整点),你会有 M 个询问,询问以某个整 点为顶点的正三角形包含大于等于 K 个星星的最小非负整数边长为多少,如果无 法满足输出-1。 对于一个 正三角形,如果给出的顶点为(X,Y),边长为 L(L>=0,当 L 为 0 的时候退化为一 个点),那么三个顶点坐标分别为(X,Y),(X+L/2,Y+L/2*sqrt(3)),(X+L...原创 2020-01-31 22:38:50 · 417 阅读 · 0 评论 -
BZOJ 1818: [Cqoi2010]内部白点 【扫描线+树状数组】
题目传送门 题目分析: 应该很容易发现颜色改变只会在第一秒发生,不会有-1的情况。 实际上就是求线段的交点数量,去掉在端点相交的情况。 把y离散化,按x轴做扫描线,遇到一条横着的线段的左端点就在树状数组中对应的y位置+1,遇到右端点-1。对竖着的线段在树状数组中查询即可。 Code: #include<cstdio> #include<vector> #include<...原创 2019-03-28 21:28:17 · 164 阅读 · 0 评论