zoukankan      html  css  js  c++  java
  • 【USACO 2019 February Bronze】Measuring Traffic 题解

    题目描述
    Farmer John的农场边上的高速公路最近出现了引人注目的流量上升,或者至少Farmer John看起来是这样的。为了证实这件事,他打算用一组传感器测量公路上的车流量,每个传感器被用来测量一小段路面上的车流量的数值。
    不幸的是,某一天经过牛棚的时候,Farmer John被绊倒了,装有传感器的盒子掉进了一个巨大的奶缸,之后它们就不能正常工作了。比起之前可以产生一个精确的车流量读数,现在每个传感器只能输出一个可能结果的范围。例如,一个传感器可能会给出范围[7,13],表示在这段路面上的车流量不小于7,并且不大于13。
    高速公路经过农场的这一段长N英里,车辆仅从一个方向通过公路,从第1英里驶向第N英里。Farmer John想要安装N个传感器——每一个监测高速公路上1英里长的路段。在其中某些路段上,有能够使得车辆进入高速公路的上匝道;在所有这样的路段上,Farmer John会将传感器装在上匝道上,测量流入的(近似)车流量。在某些路段上有能够使得车辆离开高速公路的下匝道;在所有这样的路段上,Farmer John会将传感器装在下匝道上。每一个路段包含至多一个匝道。如果在公路的一个路段上没有上匝道或下匝道,Farmer John就将传感器装在高速公路的主路上。
    给定Farmer John的N个传感器的读数,请求出在高速公路第1英里之前和第N英里之后车流量的最为准确的可能范围。这些范围应当与所有N个传感器的读数相一致。

    输入
    输入的第一行包含N(1≤N≤100)。余下N行每行按从第1英里至第N英里的顺序描述一段1英里长的路段。每行包含一个字符串,为"on"(如果这段路上有一个上匝道),“off”(如果这段路上有一个下匝道),或者是"none"(如果这段路上没有匝道),然后是两个范围为0…1000的整数,表示这段路上的传感器的读数所给出的下界、上界。如果这段路上包含匝道,传感器读数来自于匝道,否则来自于主路。至少一个高速公路路段的描述会是"none"。

    输出
    输出的第一行包含两个整数,为第1英里之前的车流量的最准确的可能范围。第二行包含两个整数,为第N英里之后的车流量的最准确的可能范围。输入保证存在符合要求的解。

    样例输入
    4
    on 1 1
    none 10 14
    none 11 15
    off 2 3

    样例输出
    10 13
    8 12

    提示
    在这个例子中,路段2和路段3的读数组合在一起告诉我们通过这两个路段的车流量为范围[11,14]之间的某个值,因为只有这个范围与两个读数[10,14]和[11,15]均一致。在第1英里,恰有1单位的车辆通过上匝道进入,所以在第1英里之前,车流量一定在范围[10,13]之内。在第4英里,2单位到3单位之间的车辆通过下匝道离开,所以这段路之后可能的车流量范围为[8,12]。

    先放一个老师的英文题解翻译:点这里

    思路:

    实话说这道题比较拗口,一开始看难得一批,结果发现水题一道(我不会告诉你我考试时只有90分的)。
    据我统计,这次考试就这道正确率最低。玩笑归玩笑,我们来讲讲题。

    我们先想求前面和后面的人数区间有什么不同,其实没什么不同,就是求后面要正着,求前面要倒着,然后倒着的on就变成off,反之。
    然后扫描1…N英里的不同高速公路组件时缩小/修改它。每次我们看到传感器直接从高速公路读取数据时,这会将可能的范围[a,b]剪辑到传感器给定的范围。每当我们看到范围为[a′,b′的入口匝道时,可能的交通流的新范围为[a+a′,b+b′。类似地,当我们看到范围为[a′,b′的出口匝道时,可能的交通流值的新范围为[a-b′,b-a′(在这次更新之后,如果范围的下限变为负值,我们将其设置为零,因为我们不能有负的交通流速率)。
    正,反执行两边就可以了。

  • 相关阅读:
    BNU 51002 BQG's Complexity Analysis
    BNU OJ 51003 BQG's Confusing Sequence
    BNU OJ 51000 BQG's Random String
    BNU OJ 50999 BQG's Approaching Deadline
    BNU OJ 50998 BQG's Messy Code
    BNU OJ 50997 BQG's Programming Contest
    CodeForces 609D Gadgets for dollars and pounds
    CodeForces 609C Load Balancing
    CodeForces 609B The Best Gift
    CodeForces 609A USB Flash Drives
  • 原文地址:https://www.cnblogs.com/2020-zhy-jzoj/p/13159892.html
Copyright © 2011-2022 走看看