摘要:
传送门 把圆拆成上下两个圆弧,因为不存在相交关系,圆弧直接的上下关系是不变的。 用set维护这些圆弧,插入的时候upper_bound一下,如果找到的是上圆弧,就是我外面的第一个圆,否则我外面的第一个圆就是这个下圆弧外面的第一个圆。 //Achen #include<algorithm> #incl 阅读全文
摘要:
传送门 操作离线之后倒着做,只有加点操作。 用set动态维护凸包即可。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cstdi 阅读全文
摘要:
传送门 题解传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cstdio> #include<queue> #includ 阅读全文
摘要:
传送门 分块+凸包 求出前缀和数组s 对于l~r加上k,相当于s[l]~s[r]加上一个首项为k,公差为k的等差数列。r~n加上k*(r-l+1)。 分块之后对每一块维护两个标记,一个记录它加的等差数列(两个等差数列相加仍是等差数列),一个记录它整体加的值。 设首项的标记为A,公差为B 查询一块的最 阅读全文
摘要:
传送门 一个最小圆覆盖的模板。 之前一直没懂三点求圆心的那段代码,orz汪神 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cs 阅读全文
该文被密码保护。 阅读全文
该文被密码保护。 阅读全文
摘要:
这周各种头疼,一直睡觉+发呆,啥子都没干。 就补一下之前的东西。 d1t1小凸玩矩阵 传送门 一开始脑子抽写了最小费用最大流,不知道自己怎么想的。 第k大最小,明显的二分,又是二分图,二分第k大值,把小于它的边权值设为1,大于它的权值设为0跑最大流即可,也可以直接用匈牙利。 //Achen #inc 阅读全文