• 洛谷—— P1503 鬼子进村


    https://www.luogu.org/problemnew/show/P1503

    题目背景

    小卡正在新家的客厅中看电视。电视里正在播放放了千八百次依旧重播的《亮剑》,剧中李云龙带领的独立团在一个县城遇到了一个鬼子小队,于是独立团与鬼子展开游击战。

    题目描述

    描述 县城里有n个用地道相连的房子,第i个只与第i-1和第i+1个相连。这是有m个消息依次传来

    1、消息为D x:鬼子将x号房子摧毁了,地道被堵上。

    2、消息为R :村民们将鬼子上一个摧毁的房子修复了。

    3、消息为Q x:有一名士兵被围堵在x号房子中。

    李云龙收到信息很紧张,他想知道每一个被围堵的士兵能够到达的房子有几个。

    输入输出格式

    输入格式:

    第一行2个整数n,m(n,m<=50000)。

    接下来m行,有如题目所说的三种信息共m条。

    输出格式:

    对于每一个被围堵的士兵,输出该士兵能够到达的房子数。

    输入输出样例

    输入样例#1: 复制
    7 9
    D 3
    D 6
    D 5
    Q 4
    Q 5
    R
    Q 4
    R
    Q 4
    
    输出样例#1: 复制
    1
    0
    2
    4
    

    说明

    若士兵被围堵在摧毁了的房子中,那只能等死了。。。。。。

    stl——set

     1 #include <cstdio>
     2 #include <set>
     3 
     4 using namespace std;
     5 
     6 inline void read(int &x)
     7 {
     8     x=0; register char ch=getchar();
     9     for(; ch>'9'||ch<'0'; ) ch=getchar();
    10     for(; ch>='0'&&ch<='9'; ch=getchar()) x=x*10+ch-'0';
    11 }
    12 
    13 set<int>_set;
    14 set<int>::iterator pos;
    15 
    16 int n,m,x,tail,que[50005];
    17 
    18 int Presist()
    19 {
    20     read(n),read(m);
    21     _set.insert(0);
    22     _set.insert(n+1);
    23     for(char s[1]; m--; )
    24     {
    25         scanf("%s",s);
    26         if(s[0]=='D')
    27         {
    28             read(x);
    29             _set.insert(x);
    30             que[++tail]=x;
    31         }
    32         else if(s[0]=='Q')
    33         {
    34             read(x);
    35             pos=_set.lower_bound(x);
    36             if(*pos==x) puts("0");
    37             else printf("%d
    ",(int)*pos-*(--pos)-1);
    38         }
    39         else
    40         {
    41             pos=_set.find(que[tail--]);
    42             _set.erase(pos);
    43         }
    44     }
    45     return 0;
    46 }
    47 
    48 int Aptal=Presist();
    49 int main(int argc,char**argv){;}
  • 相关阅读:
    jqGrid Demos
    响应式web设计之CSS3 Media Queries
    固定表头带滚动条的HTML表格
    eclipse不自动弹出提示(alt+/快捷键失效)
    用ant打包可运行的jar文件 (将第三方jar包放进你自己的jar包)
    lufylegend库 LButton
    lufylegend库 鼠标事件 循环事件 键盘事件
    lufylegend库 LTextField
    jsp内置对象 的使用范围和类型【说明】
    struts2 maven整合tiles3
  • 原文地址:https://www.cnblogs.com/Shy-key/p/7881136.html
Copyright © 2020-2023  润新知