zoukankan      html  css  js  c++  java
  • [SHOI2008]堵塞的交通traffic

    Description

      有一天,由于某种穿越现象作用,你来到了传说中的小人国。小人国的布局非常奇特,整个国家的交通系统可
    以被看成是一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一条道路,所以总共有2C个
    城市和3C-2条道路。 小人国的交通状况非常槽糕。有的时候由于交通堵塞,两座城市之间的道路会变得不连通,
    直到拥堵解决,道路才会恢复畅通。初来咋到的你决心毛遂自荐到交通部某份差事,部长听说你来自一个科技高度
    发达的世界,喜出望外地要求你编写一个查询应答系统,以挽救已经病入膏肓的小人国交通系统。 小人国的交通
    部将提供一些交通信息给你,你的任务是根据当前的交通情况回答查询的问题。交通信息可以分为以下几种格式:
    Close r1 c1 r2 c2:相邻的两座城市(r1,c1)和(r2,c2)之间的道路被堵塞了;Open r1 c1 r2 c2:相邻的两座城
    市(r1,c1)和(r2,c2)之间的道路被疏通了;Ask r1 c1 r2 c2:询问城市(r1,c1)和(r2,c2)是否连通。如果存在一
    条路径使得这两条城市连通,则返回Y,否则返回N;

    Input

      第一行只有一个整数C,表示网格的列数。接下来若干行,每行为一条交通信息,以单独的一行“Exit”作为
    结束。我们假设在一开始所有的道路都是堵塞的。我们保证 C小于等于100000,信息条数小于等于100000。

    Output

      对于每个查询,输出一个“Y”或“N”。

    Sample Input

    2
    Open 1 1 1 2
    Open 1 2 2 2
    Ask 1 1 2 2
    Ask 2 1 2 2
    Exit

    Sample Output

    Y
    N

     

    题解:线段树维护连通性(比较恶心);

    吐槽:初写这道题时,只感到很难写,但敲完了这题,我对线段树有了全新的认识;

    交上去发现每次都wa,写暴力开始对拍,拍得那是一个昏天黑地......对拍了一整天之后,随机数据仍然没有解决问题,于是放弃对拍......

    但对拍也给我了一些我如何错误的思路,在仔细思考后,发现了是updata()这个过程中出现了一些问题,改正后成功A掉;

    cogs上数据太水;

    代码:写得太丑,还是不粘出来丢人了;

    算是启示吧:静态查错实际上是最有效的查错方式,当实在无法找到错误的时候,一是看看自己的思路是否错误,忽略了一些情况,二是看看是否有一些思维惯性的作用,就是先换个脑子再来看看代码;

  • 相关阅读:
    Spring 资源文件处理
    Mysql Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '='
    JAVA NIO Socket通道
    JAVA NIO FileChannel 内存映射文件
    JAVA NIO Scatter/Gather(矢量IO)
    JAVA NIO Channel
    JAVA NIO Buffer
    MTU(Maximum transmission unit) 最大传输单元
    TCP建立连接之三次握手
    TCP首部解析
  • 原文地址:https://www.cnblogs.com/chadinblog/p/5984271.html
Copyright © 2011-2022 走看看