二分答案
文章平均质量分 75
Aby_Lightman
这个作者很懒,什么都没留下…
展开
-
3079 挖金矿
Task N*m的矩形,每行取[ 1,m ]个数,求取出的最大平均值。H*n<=1e5,a[i][j]∈[1,1e9]Solution 二分的功能: ① 有序数组查找某值 ② 假定解,判可行 ③ 最大化最小值 ④ 最大化平均值 本题用2,4个功能。sum1+sum2+*+sumn/num1+num2+***numn>=k (sum1-k*num1)+(sum2-k*n原创 2016-10-26 22:11:03 · 386 阅读 · 0 评论 -
3130 排序
Task 给出1-n的全排列,m次操作分为两种: ① (0,l,r)将区间[l,r]升序排列 ② (1,l,r)将区间[l,r]降序排列。 n,m<=1e5Solution 6秒的时限,真是个暴力的好时机 用sort函数sort(A+l,A+r+1,cmp)可以对区间[l,r]升序或者降序排列,这样就有80分了。 但是本人粗鄙,写成了sort(A+l+1,A+r+1),居然还有原创 2016-11-11 20:46:06 · 304 阅读 · 0 评论 -
2012
2012D2T2 教室 Task 有n个正数,m次操作,每次将[ li, ri ]区间所有值-ci,求操作后第一次出现负数的操作编号。 n,m<=1e6,ci<=1e9Solution 方法一: 发现结果是单调的,每个数不可能变大,只可能随操作次数增多越来越小。 如果二分操作次数,就把问题转化成一个判定问题:这个区间是否会出现负数? 对区间加减可以利用线段树来维护区间最小值判断是否有负原创 2016-11-02 21:25:30 · 283 阅读 · 0 评论 -
D2T3 运输计划
Task 一棵n节点树,m个询问求(a,b)路径距离。改动一条边距为0,求m个询问中最大距离的最小值。Solution 方法一: 暴力出奇迹。 根据题意“改动一条边”,最朴素的做法是O(n)枚举改动哪一条边,该边只对路径中存在该边的询问有影响。询问可以按照是否包含该边分为两类,ans=max(包含的最大距离-v,不包含的最大距离)。问题转化成:判定边K是否存在于路径Q(a,b)上。如果把a,原创 2016-11-14 14:56:37 · 611 阅读 · 0 评论