zoukankan      html  css  js  c++  java
  • 20171022

    T1,水题

    T2,想到了70分做法,其实1,2串已经给了O(n)验证的提示,然后我们二分一个答案,然后就可以把大于它的标成1,剩下的标成2,然后验证答案,若答案为1,那么将右边界左移,反之左端点右移; 注意一下边界就可以得到答案,

    T3,树剖+线段树,我差在了以下两点:

    1、没有分析出来当有合法方案时,一条可删除的路径上,只能有一条边被覆盖了一次,因为如果有多条的话,这条路径就占用了其他路径的空间(每一条边都必须被删一次),所以每次先判断整个线段树的最小值是不是1,不是的话不合法,然后找到一位置,将其设为INF,然后然会覆盖他的路径的编号

    2、就是怎么处理覆盖一条边的路径的编号,就是在用一个变量,维护一条边上覆盖它的路径的编号和,然后覆盖数和编号和同时处理,当一个点的覆盖数为1时,那么他的编号和就对应一条路径,然后就可以处理了

    T3爆零了,应该多拿一些暴力分

  • 相关阅读:
    旧梦重温
    树莓派改用中山大学软件源
    [翻译]lpeg入门教程
    为python-sproto添加map支持
    玩家回档原因分析
    为sproto添加python绑定
    如何快速编写Vim语法高亮文件
    windows调试器尝鲜
    休斯顿,我们遇到了一个问题
    糟糕的十一月
  • 原文地址:https://www.cnblogs.com/FOXYY/p/7712080.html
Copyright © 2011-2022 走看看