随笔分类 -  数据结构_栈&队列

摘要:"Problem A. Ascending Rating" 题意: 给定一个序列a[1..n],对于所有长度为m的连续子区间,求出区间的最大值以及从左往右扫描该区间时a的最大值的变化次数。 1≤m≤n≤107。 Shortest judge solution: 534 bytes 题解: 官方题解: 阅读全文
posted @ 2018-08-02 22:25 v9fly 阅读(135) 评论(0) 推荐(0)
摘要:2017 Multi-University Training Contest - Team 2 01 签到 #include<bits/stdc++.h> using namespace std; #pragma comment(linker, "/STACK:102400000,102400000 阅读全文
posted @ 2017-07-29 09:43 v9fly 阅读(186) 评论(0) 推荐(1)
摘要:POJ 2796 Feel Good 题意:给出n个数,定义区间的值=这段区间之内的最小值 * 这段区间所有元素之和,求出这n个数可能的区间最大值。 tags: 好题, 可参考大神博客 主要思路:对于每个数,找出以它为最小值的最大区间。 这个怎么找呢?暴力来O(N^2)肯定超时,可以借助单调栈,每个 阅读全文
posted @ 2017-05-09 15:57 v9fly 阅读(139) 评论(0) 推荐(0)
摘要:每日链接题解 spoj MINSUB 题意:给定一个由非负数组成的矩阵M,和一个整数K,对于矩阵M的子矩阵M’,定义min(M’)为M'矩阵中元素的最小值。我们需要找出这样一个子矩阵,该矩阵的面积至少为K,且min(M’)最大化。面积的定义为该矩阵的行数*列数。 tags: 好题 首先想到二分最小值 阅读全文
posted @ 2017-05-09 15:56 v9fly 阅读(207) 评论(0) 推荐(0)
摘要:1007: [HNOI2008]水平可见直线 tags:在纸上画画还是很容易看出的,可以看到的部分是一个半凸包,且随着交点横坐标增大时,直线斜率增加。所以这题只要按斜率排好序,再维护一个单调栈即可。 阅读全文
posted @ 2017-03-03 00:54 v9fly 阅读(175) 评论(0) 推荐(0)
摘要:1012: [JSOI2008]最大数maxnumber 题意:两种操作:1、查询当前数列中末尾L个数中的最大的数;2、当前数列末尾插入一个数。 tags:水题 线段树 #include<bits/stdc++.h> using namespace std; #pragma comment(link 阅读全文
posted @ 2017-02-16 19:41 v9fly 阅读(168) 评论(0) 推荐(0)
摘要:1、BestCoder Round #89 2、总结:4个题,只能做A、B,全都靠hack上分。。 01 HDU 5944 水 1、题意:一个字符串,求有多少组字符y,r,x的下标能组成等比数列。 2、总结:有个坑,y,r,x顺序组公比q>1,也可反着来x,r,y顺序组。 #include<iost 阅读全文
posted @ 2016-10-31 14:49 v9fly 阅读(197) 评论(0) 推荐(0)
摘要:1、CF #374 (Div. 2) D. Maxim and Array 2、总结:按绝对值最小贪心下去即可 3、题意:对n个数进行+x或-x的k次操作,要使操作之后的n个数乘积最小。 (1)优先队列 #include<bits/stdc++.h> #define F(i,a,b) for (in 阅读全文
posted @ 2016-10-05 15:37 v9fly 阅读(203) 评论(0) 推荐(0)
摘要:1、Poj 3250 Bad Hair Day 2、链接:http://poj.org/problem?id=3250 3、总结:单调栈 题意:n头牛,当i>j,j在i的右边并且i与j之间的所有牛均比i矮,i就可看到j。i可看到的所有牛数记为ai,求S(ai),(1<=i<=n)。 转化一下,求j可 阅读全文
posted @ 2016-08-18 15:43 v9fly 阅读(173) 评论(0) 推荐(0)