摘要: 题目链接 #解题思路 很明显找半径直接二分最小值就行了,但是由于题目给的坐标太大,不可能开一个$10000^2$的二维数组求前缀和来写check函数,所以就需要离散化处理。 #代码 const int maxn = 5e2+10; int c,n,fr[maxn],fc[maxn],pre[maxn 阅读全文
posted @ 2020-07-15 23:12 shuitiangong 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 题目链接 #解题思路 这题可以很巧妙的用二分来解决,因为最多只含一个奇数,所以我们可以二分奇数位置。如果总的防具数是偶数,那么就没有破绽,否则,如果左区间的防具数是奇数,那么答案肯定在左区间,如果右区间的防具数是奇数,那么答案就在右区间。 #代码 const int maxn = 2e5+10; s 阅读全文
posted @ 2020-07-15 12:12 shuitiangong 阅读(142) 评论(0) 推荐(0) 编辑