摘要:
原题链接 题解 想象一下,从左上角无限大的地方开始,第一个看到的一定是斜率最小的且截距最大的,慢慢往右下角滑,第一个碰到的直线一定是斜率比前一个小(不一定是第二小)的但是是它的斜率所属直线里截距最大的 重复上述步骤,最外面的直线一定长这样 图片来自luogu,linaonao 所以我们可以按斜率排序 阅读全文
posted @ 2024-03-20 21:24
纯粹的
阅读(32)
评论(0)
推荐(0)
摘要:
原题链接 题解 这么优质的文章我写什么题解 好难解释必然性感觉像模拟?? code #include<bits/stdc++.h> using namespace std; int q[100005]={0}; struct node { double x,y; }a[100005]; double 阅读全文
posted @ 2024-03-20 19:39
纯粹的
阅读(27)
评论(0)
推荐(0)
摘要:
原题链接 题解 1.将雷达建在海岸线上最优,覆盖的面积最大 2.根据光线可逆,雷达安装的位置覆盖多少小岛,等价于小岛被覆盖需要在哪个范围的位置上安装雷达 3.想象把雷达安装在最左边,然后慢慢往右移,这个时候雷达覆盖的小岛数量会越来越多,当右移到某个原本能覆盖的小岛覆盖不了时,在那个位置安装一个雷达 阅读全文
posted @ 2024-03-20 18:01
纯粹的
阅读(82)
评论(0)
推荐(0)
摘要:
原题链接 题解 叉积的运用,scanf控制输入格式 code #include<bits/stdc++.h> using namespace std; struct node { int x,y; }a[100005]; int x[200005],y[200005]; int main() { f 阅读全文
posted @ 2024-03-20 16:18
纯粹的
阅读(18)
评论(0)
推荐(0)
摘要:
原题链接 题解 由于本题数据范围小,所以考虑暴力 两点确定一条直线,所以我们先确定两个点AB,然后再遍历所有点C,如果向量AB叉乘AC等于0代表共线(没说从哪里起飞) code #include<bits/stdc++.h> #define ll long long using namespace 阅读全文
posted @ 2024-03-20 15:32
纯粹的
阅读(61)
评论(0)
推荐(0)
摘要:
原题链接 题解 有点思维,已知一个交点不会有三条对角线经过,所以有且只有两条对角线经过,而两条对角线又对应四个顶点,所以变成了组合数学,n个顶点里取四个。 为了防止溢出,这里做了一些处理 code #include<bits/stdc++.h> using namespace std; int ma 阅读全文
posted @ 2024-03-20 12:29
纯粹的
阅读(21)
评论(0)
推荐(0)
摘要:
原题链接 题解 对于一个圆而言,如果两个点都在其内或其外,那么这个圆是不会经过的 所以穿过的圆是其中一个点在里面,另一个点在外面 code #include<bits/stdc++.h> using namespace std; struct node { int x,y,r; }circle[10 阅读全文
posted @ 2024-03-20 12:15
纯粹的
阅读(34)
评论(0)
推荐(0)

浙公网安备 33010602011771号