Histogram LightOJ - 1083 题意:给出一个直方图,由n个长条组成,它们的x轴上坐标分别为1-n,读入n之后读入的一行中,第i个表示x轴上坐标为i的长条长度。求直方图最大的正方形面积。 方法: 核心是求出每个长条向左右可以"扩展"的最大长度。 法一:单调栈 将n个元素的编号依次入 ...
分类:
其他好文 时间:
2017-10-21 16:28:12
阅读次数:
176
给出一个目标序列,初始序列为0,你有一种操作方式可以将某段值相同的区间全部加上一定的值,问得到目标序列的最小次数。 开始没注意要求值相同,想都不想就暴力了,后来发现对于每个峰,只要找每个相对峰顶的阶数相同的数中数字相同的个数,最后总数减掉相同的就行了。 说的这么复杂,后来才发现换成图形就是找最小覆盖 ...
分类:
其他好文 时间:
2017-10-19 13:59:59
阅读次数:
215
题目大意 给出一个有n个数的序列 求符合 区间各数或起来的数小于区间最大数 的区间的个数 题解 预处理出每个数每一位是0的那位左边最近的1和右边最近的1,用单调栈找出每个最大值所在的区间的左右端点,统计答案即可。 #include<cstdio> #include<algorithm> #inclu ...
分类:
其他好文 时间:
2017-10-17 17:29:31
阅读次数:
175
题意 给一个长度不超过200000的字符串s,假定有一个字符串a,这个字符串在s中出现次数是f(a),你需要让$|a|f(a)$最大。 但是有一些位置是禁止的,即以该位置为结束位置的字符串不计数。 分析 先不考虑禁止的位置 那么可以求出后缀数组,枚举每一个height[i]作为|a|,向两边扩展,看 ...
分类:
编程语言 时间:
2017-10-14 18:24:03
阅读次数:
165
题目描述 模10^9+61 输入 第一行包含一个正整数 T ,表示有 T 组测试数据。 接下来依次给出每组测试数据。对于每组测试数据: 第一行包含一个正整数 n 。 第二行包含 n 个非负整数,表示 A_1,A_2,?,A_n 。 保证在一行中的每个整数之间有恰好一个空格,没有其他额外的空格。 10 ...
分类:
其他好文 时间:
2017-10-13 12:30:57
阅读次数:
123
题目链接 T1 维护一个单调栈 #include <iostream> #include <cstdio> #define N 500000 #define rep(a,b,c) for(int a=b;a<=c;++a) #define Rep(a,b,c) for(int a=b;a>=c;-- ...
分类:
其他好文 时间:
2017-10-10 19:04:06
阅读次数:
194
【BZOJ4709】[Jsoi2011]柠檬 Description Flute 很喜欢柠檬。它准备了一串用树枝串起来的贝壳,打算用一种魔法把贝壳变成柠檬。贝壳一共有 N (1 ≤ N ≤ 100,000) 只,按顺序串在树枝上。为了方便,我们从左到右给贝壳编号 1..N。每只贝壳的大小不一定相同, ...
分类:
Web程序 时间:
2017-10-10 10:09:19
阅读次数:
451
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1660 题意: 有n头牛,身高分别为h[i]。 它们排成一排,面向右边。第i头牛可以看见在它右边的牛j,只要h[i] > h[j],且中间没有身高 >= h[i]的牛挡住视线。 第i头牛能看见 ...
分类:
其他好文 时间:
2017-10-08 00:14:40
阅读次数:
164
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1437 题意: 思路: 单调栈题。求出以每个数为区间最大值的区间范围即可。 ...
分类:
其他好文 时间:
2017-10-07 14:57:27
阅读次数:
203
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1657 题意: Farmer John的N(1<=N<=50,000)头奶牛整齐地站成一列“嚎叫”。 每头奶牛有一个确定的高度h(1<=h<=2000000000),叫的音量为v (1<=v< ...
分类:
其他好文 时间:
2017-10-06 10:38:00
阅读次数:
214