1113: [Poi2008]海报PLA

原创 2016年08月30日 14:17:06

1113: [Poi2008]海报PLA

Time Limit: 10 Sec  Memory Limit: 162 MB
Submit: 986  Solved: 648
[Submit][Status][Discuss]

Description

N个矩形,排成一排. 现在希望用尽量少的矩形海报Cover住它们.

Input

第一行给出数字N,代表有N个矩形.N在[1,250000] 下面N行,每行给出矩形的长与宽.其值在[1,1000000000]2 1/2 Postering

Output

最少数量的海报数.

Sample Input

5
1 2
1 3
2 2
2 5
1 4

Sample Output

4

HINT

Source

[Submit][Status][Discuss]

维护一个单调栈
#include<iostream>
#include<cstdio>
#include<queue>
#include<vector>
#include<bitset>
#include<algorithm>
#include<cstring>
#include<map>
#include<stack>
#include<set>
#include<cmath>
#include<ext/pb_ds/priority_queue.hpp>
using namespace std;

const int maxn = 3E5;

int n,Ans,h[maxn];

stack <int> s;

int main()
{
	#ifdef DMC
		freopen("DMC.txt","r",stdin);
	#endif
	
	cin >> n;
	for (int i = 1; i <= n; i++) {
		int x,y; scanf("%d%d",&x,&y);
		h[i] = y;
	}
	++n;
	for (int i = 1; i <= n; i++) {
		while (!s.empty()) {
			int now = s.top(); 
			if (now <= h[i]) break;
			s.pop(); ++Ans;
		}
		if (s.empty()) s.push(h[i]);
		else {
			int now = s.top();
			if (now == h[i]) continue;
			s.push(h[i]);
		}
	}
	cout << Ans;
	return 0;
}

版权声明:这个人很懒什么都没有留下

相关文章推荐

【BZOJ 1113】 [Poi2008]海报PLA

两种做法~ RMQ/单调栈~

bzoj1113【poi2008】海报PLA

单调栈

POI2008 BZOJ 1116 CLO -并查集-基环树

题目链接:右转进入题目 题目大意:给定一个无向图,选择若干条边,并变成有向的,使每个点的入度为1. 题解:因为最后是有向图,点的入度=1意味着图的入度为n意味着图的出度=n意味着图的度为2n意味着...

【BZOJ 1121】 [POI2008]激光发射器SZK

光路水题~

BZOJ1123: [POI2008]BLO

题目大意: 给一张无向连通图,对于每个点xx,输出删掉所有与他相邻的边之后,图中有多少对点不连通设删掉所有与点xx相邻的边之后,除了自己其他联通块大小为a1,a2,a3...a_{1},a_{2},a...

【POI2008】bzoj1122 账本

前缀和+单调队列

BZOJ 1132 POI2008 Tro 计算几何

题目大意:给定平面上的一些点,求这些点能组成的所有三角形的面积之和 首先我们枚举每一个点 以这个点为原点建立平面直角坐标系 然后将第一、四象限和x、y轴正半轴上的点按照斜率排序 枚举第二个和第三个...

BZOJ 1132 POI 2008 Tro 计算几何

题目大意:给出平面上的一些点,问这些点中的任意三个点组成的三角形的面积和是多少。 思路:看数据范围只算法系列。由于每个三角形有三个顶点,因此暴力的话应该是O(n^3)的时间复杂度,很明显超时...

【带模的除法】poi2008 per

这道题的难点在于带模的除法,可恶的是模还不是质数,更可恶的是还没办法约分。。 看了标程才知道原来还可以这样做:把取模的数进行分解质因数,对于你要乘或者要除以某一个数的时候,将这个数和模的gcd额外处理...

bzoj 1132: [POI2008]Tro (计算几何)

题目描述传送门题目大意:平面上有N个点. 求出所有以这N个点为顶点的三角形的面积和题解枚举每个点作为原点,然后得到一对起点在原点的向量,两个夹角小于180的向量叉积的1/2就是一个合法的三角形的面积。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)