码迷,mamicode.com
首页 > 其他好文 > 详细

BZOJ 1113: [Poi2008]海报PLA

时间:2014-11-01 23:11:57      阅读:366      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   io   color   os   ar   for   

题目

1113: [Poi2008]海报PLA

Time Limit: 10 Sec  Memory Limit: 162 MB

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
bubuko.com,布布扣

Sample Output

4
bubuko.com,布布扣

题解

这道题目,我们可以像一旦出现高度一样的就可以用同一张海报盖掉,但是两张海报之中的海报就只能单独再贴了。基于这个思路,我们可以写一个单调栈。

代码

bubuko.com,布布扣
 1 /*Author:WNJXYK*/
 2 #include<cstdio>
 3 using namespace std;
 4 int t,x,n,s[250001],top,ans;
 5 int main(){
 6     scanf("%d",&n);
 7     for(int i=1;i<=n;i++){
 8        scanf("%d%d",&t,&x);
 9        while(x<=s[top]){
10            if(x==s[top])ans++;
11            top--;
12        }
13        s[++top]=x;
14     }
15     printf("%d",n-ans);
16     return 0;
17 }
View Code

 

BZOJ 1113: [Poi2008]海报PLA

标签:des   style   blog   http   io   color   os   ar   for   

原文地址:http://www.cnblogs.com/WNJXYK/p/4067845.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!