zoukankan      html  css  js  c++  java
  • BZOJ 1113: [Poi2008]海报PLA

    题目

    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

    Sample Output

    4

    题解

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

    代码

     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
  • 相关阅读:
    Poj3295 tautology
    Poj2586 每五个月都是亏
    Poj 2109 k^n = p.
    Poj2109 (2) k^n = p.
    Poj2109 (1) k^n = p.
    Poj2965 冰箱的开关
    Poj1328 用雷达覆盖所有的岛屿
    FASTER-RCNN
    卷积、池化计算
    理论感受野的计算
  • 原文地址:https://www.cnblogs.com/WNJXYK/p/4067845.html
Copyright © 2011-2022 走看看