题目大意:给你两个长度为n的数组a, b,问你有多少个问你有多少个区间满足 a中最大值等于b中最小值。 思路:我本来的想法是用单调栈求出每个点的管辖区间,然后问题就变成了巨麻烦的线段覆盖问题,就爆炸写了 一晚上假算法。正解就是枚举一个端点,然后二分找右端点的区间,因为满足一个很神奇的单调性,然后st ...
分类:
其他好文 时间:
2018-06-27 13:54:57
阅读次数:
160
A.饥饿的奶牛 想到线段覆盖问题的贪心解法,比如根据线段长度排序再选(据加藤惠实测能过 20% 数据),比如根据左端点为第一关键字,右端点为第二关键字排序再选……胡乱画图发现都不行。然后考虑 DP,f[i][j] 表示前 i 条线段选 j 条的最大收益,期望从 f[i-1][j-1] 和 f[i][ ...
分类:
其他好文 时间:
2018-06-14 21:00:50
阅读次数:
194
题目大意:有一个n*m的矩阵,每个格子一个高度,第一行可以放蓄水站,可以向四周比这格高度小的格子送水。问可不可以让第n行都有水,若可以输出最少建几个蓄水站,否则输出最少有几个格子没有水 题解:对于每个格子处理出它可以到的最左端和最右段,因为如果有解,可覆盖的区间连续,所以记忆化搜索。最后线段覆盖就好 ...
分类:
其他好文 时间:
2018-05-11 23:37:08
阅读次数:
160
题目大意: 有$n(n\le10^6)$个线段,每个线段覆盖的范围是$[l_i,r_i]$,要求从中选取$k(k\le10^6)$个线段使得这些线段覆盖范围的交集最大,求最大交集及任意一种方案。 思路: 对左端点排序,用堆维护右端点即可。 ...
分类:
其他好文 时间:
2018-04-05 15:50:51
阅读次数:
146
【题解】 线段覆盖问题。线段树或者并查集都可以。不离散化居然能过? ...
分类:
其他好文 时间:
2018-03-11 20:59:37
阅读次数:
167
题目描述 Description 给定x轴上的N(0<N<100)条线段,每个线段由它的二个端点a_I和b_I确定,I=1,2,……N.这些坐标都是区间(-999,999)的整数。有些线段之间会相互交叠或覆盖。请你编写一个程序,从给出的线段中去掉尽量少的线段,使得剩下的线段两两之间没有内部公共点。所 ...
分类:
其他好文 时间:
2018-02-28 01:05:54
阅读次数:
165
题目描述 Description 给定x轴上的N(0<N<100)条线段,每个线段由它的二个端点a_I和b_I确定,I=1,2,……N.这些坐标都是区间(-999,999)的整数。有些线段之间会相互交叠或覆盖。请你编写一个程序,从给出的线段中去掉尽量少的线段,使得剩下的线段两两之间没有内部公共点。所 ...
分类:
其他好文 时间:
2018-02-06 16:47:43
阅读次数:
165
一开始以为是个线段覆盖,后来仔细一读才发现有固定的结束时间。 类似于线段覆盖按右端点排序,使劲往里加然后加不了就用现在的换,使得所用时间尽量短。 PS:VANE最近回家养老了,只有大奕哥来撑场子了。 ...
分类:
Web程序 时间:
2018-01-21 20:37:18
阅读次数:
159
【题解】 这是一道区间覆盖的题目,我们可以用树状数组或者线段树来解决。显然,每个区间 [L,R] 被多少条线段覆盖这样计算:R左边的线段的左端点数-L左边的线段的右端点数 这样,我们分别维护1~Pos位置上左端点、右端点的个数即可。 1 #include<cstdio> 2 #include<alg ...
分类:
其他好文 时间:
2018-01-05 20:45:59
阅读次数:
163
题目描述 Description 给定x轴上的N(0<N<100)条线段,每个线段由它的二个端点a_I和b_I确定,I=1,2,……N.这些坐标都是区间(-999,999)的整数。有些线段之间会相互交叠或覆盖。请你编写一个程序,从给出的线段中去掉尽量少的线段,使得剩下的线段两两之间没有内部公共点。所 ...
分类:
其他好文 时间:
2017-11-11 18:52:36
阅读次数:
196