zoukankan      html  css  js  c++  java
  • HDU 5372 Segment Game

    我的内心是几乎崩溃的,感受到了英语渣的悲剧。。

    前几次WA没有发现是第i次增加操作。> <

    发现的时候已经要结束了,飞快的改完一看来不及了直接一交。。。愉快领到了CE,已得赛后秒过题综合症。

    其实这题看起来像CDQ分治,但是我还不太会= =

    但是我们可以用树状数组做。

    先来个图

    当查询[x,y]这个区间的时候。蓝色的是需要统计的,绿色的是不需要统计的。橙色的 另外说。

    可以用left[i]表示左端点在i的右边的(>=)的点的个数。

    right[i]表示右端点在i的右边的点的个数。(>)

    可以发现绿色的线段有个统一的特点:他们的左端点统计在left[x]中,右端点统计在right[y]中。

    蓝色的线段只有出现在left[x]中。

    这样,我们用left[x] - right[y]就能获得蓝色线条的个数了。

    当时纠结了很久橙色线条也出现在了right[y]中,该怎么去掉。。。然后突然发现线段长度递增,因此不会出现前面的线段比后面的长的情况,也就不会出现前面有长度大于i的线条,也就是根本没有这个橙色线条存在。。

    于是这道题就变水了。。。

    直接用一个树状数组维护左端点在1-x中有多少个,另一个维护右端点在1-x有多少个

    查询的时候加加减减就好了。。。

    T T 居然没过T T居然还是因为看错题T T不想愉快玩耍了T T

    好好学英语T T

    重新培养一下变量定义的习惯T T

    代码是队友的,就不贴啦> <

  • 相关阅读:
    Jmeter入门--参数化、集合点
    Jmeter入门--断言(检查点)
    Jmeter入门--性能测试实战
    Jmeter入门--元件作用域和执行顺序
    Jmeter入门--Badboy使用教程(转)
    Jmeter入门--脚本录制
    Jmeter入门--可执行元件
    Jmeter入门--工具组成和线程组
    Jmeter入门--安装教程
    mac设置python及pip环境变量及安装mysqlclient
  • 原文地址:https://www.cnblogs.com/bbbbbq/p/4722634.html
Copyright © 2011-2022 走看看