![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
其他 尺取法
oranges_c
落寞是岁月的痕迹
展开
-
【HDU5784】How Many Triangles(极角排序 + two-pointer)
题目大意: 给你一些点的坐标让你求出锐角三角形的个数。 题解: 数一数锐角的数量A和直角+钝角的数量B,那么答案就是(A-2B)/3。 暴力算的话是O(n^3)的。使用极角排序+two pointers就可以做到O(n2log n)。 这边钝角指代范围在90度到180度之间的角(不包括90和180)。#include <cstdio>#include <iostre原创 2016-08-08 15:41:39 · 314 阅读 · 0 评论 -
BestCoder Round #91-B.Lotus and Horticulture(尺取法)
题目链接官方题解 首先考虑应该尝试选择哪些点:区间的左右端点、与区间左右端点距离0.5的点,这样就一定可以包括所有情况。 为了方便处理与区间左右端点距离0.5的点,只要将所有坐标扩大一倍,然后这些点就变成了“与区间左右端点距离1的点”了 考虑选出这些点后如何进行统计。显然先要将可以选的位置进行离散。假如我们选择的温度一开始是负无穷,这时答案是所有的c之和,考虑选择的温度不断原创 2017-01-22 14:01:24 · 272 阅读 · 0 评论 -
2017浙理工校赛重现-H.玩具(尺取+RMQ)
题目链接就是枚举区间,rmq查询区间最大值。ps:跟暴力程序对拍了下才发现查询函数写错了。。#include <cstdio>#include <iostream>#include <cstring>#include <algorithm>using namespace std;#define cl(a,b) memset(a,b,sizeof(a))#defin原创 2017-03-22 15:28:08 · 244 阅读 · 0 评论