自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 单调队列 CodeForces 91B Queue

这道题是是在插入时就保证单调,不用弹出,所以不用双端队列deque也可以做, 而且因为要用到lower_bound(),查了一下好像deque不支持lower_bound(); 所以用两个vector分别记录下标和对应的值,注意else部分涉及lower_bound()返回值的问题ops #include using namespace std; int num[100005]; i

2016-05-31 21:38:48 895

原创 单调队列 POJ 2559 Largest Rectangle in a Histogram

这道题交的时候神奇ac了,感觉好开心wakaka 题意:在给出的方块的组合图形中找到最大的矩形,并输出最大矩形的面积! 从第一个位置到第n个位置循环,循环操作为:找出当前位置右边的比它低的位置,说明已经不能继续延伸了,算出这种情况下的面积在比较看是否为最大面积 注意队列中有两个元素,一个是当前的高度,另一个是起始的位置, #include #include #include #includ

2016-05-29 12:50:48 344

原创 DP 杭电女生赛07题 Combine String

本来是打算贪心水一发,然后发现如果出现第一个和第二个序列中出现同样元素的情况的时候是会造成误判的, 也可以递归的算法,但是应该会TLE。所以就用dp啦啦 dp真是个好算法 dp[i][j]=(dp[i-1][j]&&a[i]==c[i+j])||(dp[i][j-1]&&b[j]==c[i+j]);是状态转移方程, 但是在i=0或者j=0的时候要特判一下防止re; i和j意思

2016-05-28 22:17:21 460

原创 单调队列(基础题) HDU3706 Second My Problem First

:点击打开链接 题意:对于S i = A i,在(1 我是看了题解才明白题意的orzorz 然后注意一点,因为a的范围就是int 的最大值,所以x要设成long long 类型不然相乘就会超int的 和前面一题不一样,这题只求最前面的那个值,和最大最小区间没关系,所以是一道基础题啦啦啦 #include using namespace std; int main(){

2016-05-28 11:03:25 312

原创 单调队列 HDU 3530 Subsequence

要注意的一点是:如果差值要大于k则要在已有的单调队列中删去最大或者最小值; 如果小于m,在已有的单调队列中改动是没有用的,应该引进新的数值: #include using namespace std; int num[100000+10]; int main(){ int n,m,k; while(scanf("%d%d%d",&n,&m,&k)!=EOF){

2016-05-21 13:26:32 398

原创 单调队列HDU 4374 One hundred layer

题意:在n层每层m个房间的地图中,走过每个房间都可以获得一定的money,但是每层只可以经过t个房间,可以从一个房间直接掉到下一层的同一位置的那个房间,给出x为起始位置。 对于任意一个点可能有两种到达方法一种是直接从上面掉下来,另一种是从旁边过来。 正在学队友的代码风格所以可能整体有点错乱: #include using namespace std; #define MAXN 110 #

2016-05-20 19:40:10 321

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除