
two pointers(尺取法)
文章平均质量分 74
yuhong_liu
这个作者很懒,什么都没留下…
展开
-
cf#ecr10-C. Foe Pairs- two pointers
http://codeforces.com/contest/652/problem/C给n个数的数组, n=3e5给m个敌对pair,让你选区间,一个合法区间不能包括任何一对敌对pair首先我们把a[i]和i映射起来先。。初始化一个end【】数组为0,记录的是第i个数为右端点的最大的敌对左端点(如果end[i]=0表示不存在一个敌对左端点)然后遍历原创 2016-03-26 12:00:20 · 494 阅读 · 0 评论 -
UVA 11529-Strange Tax Calculation-求三角形内点数 /二分/two pointers
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=18277平面给 n个点,保证没三点共线如果一个三角形内部有x个点,则贡献x,求所有三角形的贡献。直接数每个三角形内的点不好作,可以反过来,求【每个点被多少个三角形包含】枚举每个点x,以该点为中心,把其余的点按极角序排序,那么对于 点j原创 2016-04-08 13:00:23 · 700 阅读 · 0 评论 -
HDU 3629-Convex找凸四边形个数(扫描+二分/two pointers)
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=11713题意:给n个点,无三点共线,求凸四边形个数。对应凸四边形,有着一个 凹四边形,其实凹四边形,就相当于一个三角形,内部包含了一个点,则这样就可以构成一个凹四边形。 内部包含x个点,则x个凹四边形。则题目转化为求有多少个凹四边形,再转为 每个三角形内部有原创 2016-04-08 13:05:23 · 702 阅读 · 0 评论 -
HDU 5784- How Many Triangles-计算几何-two-pointer-数锐角三角形个数
题意:平面上n个点,问能组成多少个锐角三角形枚举每个点作为三角形的一个点i,然后对剩下的点计较排序,以点i与另一个点j 为一条边,去扫描边【i-j】左边有多少个锐角记p1,再扫描左边一共可以构成多少锐角,钝角,直角,两者相减就是钝角直角的数量p2每次on扫描的话,总复杂度n^3会超时,可以用two-pointer维护,因为j转移到j+1时,锐角的数量可以在j原创 2016-08-05 03:17:27 · 604 阅读 · 0 评论 -
cf#344-C - Report-贪心/单调栈
http://codeforces.com/contest/631/problem/C题意:给你一个n个数的序列,m次操作每次操作 两种情况1 r 表示把 1到r按升序排序2 r 表示把1到r按降序排序n,m先把操作按r从大到小排序, 如果最大的R为r_max,则把1-r_max存起来并升序排序,用头指针尾指针分别指向头尾 【tmp数组】对于Ri,原创 2016-03-04 15:46:18 · 419 阅读 · 0 评论 -
hihocoder #1502 : 最大子矩阵
#1502 : 最大子矩阵时间限制:10000ms单点时限:1000ms内存限制:256MB描述给定一个NxM的矩阵A和一个整数K,小Hi希望你能求出其中最大(元素数目最多)的子矩阵,并且该子矩阵中所有元素的和不超过K。输入第一行包含三个整数N、M和K。以下N行每行包含M个整数,表示A。对于40%的数据,1 对于1原创 2017-04-13 20:33:48 · 1007 阅读 · 0 评论