
2020牛客网暑假训练营第二场
Backdiy
梦想有一天能AK一次
展开
-
B题Boundary
题目理解 给定n个点,然后一个坐标原点,要求一个过原点的圆经过最多的给定的点,输出最多的个数 解题思路 先枚举每个点,然后再枚举其他的点,通过两条中垂线,求出圆心坐标,最后取众数 代码 #include<iostream> #include<cstdio> #include<map> #include<cmath> using namespace std; typedef long double ld; typedef pair<ld,ld> P;原创 2020-07-15 22:38:59 · 141 阅读 · 0 评论 -
C题Cover the Tree
题目意思 给定一颗树,然后求出能覆盖所有边的链的最小数目数目 思路 将叶子节点一次排号,分成两堆,然后两队之间两两相接 代码 #include <cstdio> #include <vector> #include <iostream> #define ll long long using namespace std; const int maxn = 1e6+100; int n, u, v,a[maxn],t=0; vector<int> vec[maxn原创 2020-07-14 14:12:33 · 200 阅读 · 0 评论