摘要: 题意:有一个洞穴,每个位置有一个底的高度p[i],和对应顶的高度s[i],要往里面尽量放燃料,要求燃料不能碰到顶,可以无限接近。题解:制约燃料储放的就是顶的高度了,分别求出设当前储放位置的向两边的延伸不会碰到顶的最大高度。设当前最大高度为level,起始位置为顶高,移动到下一格的时如果碰到顶,那么降... 阅读全文
posted @ 2015-08-01 23:16 陈瑞宇 阅读(426) 评论(0) 推荐(0) 编辑
摘要: 题意:有n支队伍(n是2的整数幂,2using namespace std;const int maxn = 1025;char G[maxn][maxn];int vec[5][maxn];int main(){ // freopen("in.txt","r",stdin); int n... 阅读全文
posted @ 2015-08-01 21:28 陈瑞宇 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个长度为n序列,如果这个任意连续子序列的中都有至少出现一次的元素,那么就称这个序列是不无聊的,判断这个序列是不是无聊的。先预处理出每个元素之前和之后相同元素出现的位置,就可以在O(1)的时间判断出一个元素在一个区间内是否唯一。每次从大的序列中找一个唯一元素,包含这个元素的就不用判断了,那... 阅读全文
posted @ 2015-08-01 19:00 陈瑞宇 阅读(1477) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个按发生时间的序列,表示与非门电路的输入,一开始全部输入是x,现在要改成尽量少的x,实现相同的功能。题解:电路功能只有4中0,1,x,非x。那么如果一开始x改变了,输出结果不变,那么说明是常量电路。否则一定可以只用一个x来实现相同的功能,因为从全为0到全为1的过程中一定会有某个时刻,改变... 阅读全文
posted @ 2015-08-01 17:27 陈瑞宇 阅读(815) 评论(0) 推荐(0) 编辑
摘要: 摘要:数形结合,斜率优化,单调队列。题意:求一个长度为n的01串的子串,子串长度至少为L,平均值应该尽量大,多个满足条件取长度最短,还有多个的话,取起点最靠左。求出前缀和S[i],令点Pi表示(i,S[i]),那么这个问题就转化成了求斜率最大的两点。画图分析可知,如果有上凸点,那么上凸点,一定不会是... 阅读全文
posted @ 2015-08-01 15:28 陈瑞宇 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 给一个长度为n的序列,要求删除一个连续子序列,使剩下的序列有一个长度最大的连续递增子序列。最简单的想法是枚举起点j和终点i,然后数一数,分别向前或向后能延伸的最长长度,记为g(i)和f(i)。可以先预处理出每一个点能往前和往后延伸的长度(g(i)和f(i))。然后枚举终点i,快速找一个g(j)最大的... 阅读全文
posted @ 2015-08-01 13:32 陈瑞宇 阅读(890) 评论(0) 推荐(0) 编辑