09 2019 档案
摘要:https://www.cnblogs.com/tellmewtf/p/4574438.html 这份代码不能AC,避雷,不过思路是对的,自己写就行了,还是很好写的。 样例二很容易画出来,然后思路就比较好想了。 唔,半平面交的tag也是很显然的东西。 现在考虑怎么做,其实一条直线只要在它一侧的点的个
阅读全文
摘要:半眼秒了 显然随机就能过 include include using namespace std; typedef double db; int n; db x[105],y[105];int id[105]; db abs(db x,db y){return sqrt(x x+y y);} db
阅读全文
摘要:补abc发现要会线性基。。。 先把这个点了。 还不懂为啥。 不想看。 颓。 只想睡觉。 include using namespace std; typedef long long ll; int n;ll a[55],dig[63],vis[63],sum; void add(ll x){ for
阅读全文
摘要:卡epssm 先判是不是个凸包, 显然我们要旋转点, 显然在一定范围内是有单调性的, 这个范围不太好找,我们把2pi分成若干小段,其中这些小段里有单调性,最后取min就行,eps太大会wa,推荐1e 11. 注意check的时候不能是『那样的形状』~~自己脑补去吧~~ include using n
阅读全文
摘要:奇怪。这种题为什么我三个月之前没补。。。 ~~线段树都被队友写完了啊~~ https://blog.csdn.net/hzk_cpp/article/details/92797305 康的这个 首先我们对a[i]排序, 然后其实就是不停的在推平一段区间, 也就是 将前i个数全部变成与i+1一样大的过
阅读全文
摘要:历史遗留问题,,, 发现是原题之后我就去单切了,因为我没打过去年的宁夏,两个队友都打了。。 然后就被这个题治死了。 其实思路挺好想的,就是分一下两边的点,然后找一个字典序最小的二维严格上升子序列就行了。 坐标范围显然不可能用atan2什么的就不用说了(被18北京K治成傻逼的回忆很深刻) 嗯...然后
阅读全文
摘要:开始解决一下历史遗留问题,好像八九道题的样子,估计要补个不少时间的。 首先我们很容易发现 就是 找 最小的 x 使得 x (x+1)%(2 n)==0 然后 x与x+1是互质的、 不妨令 x=ax,x+1=by, 就是找 by ax=1 除此之外还要保证这个数能整除2n,所以我们暴力枚举n的每个质因
阅读全文