zoukankan      html  css  js  c++  java
  • sol

    cuvelia

    贪心的想, 我们一定是前面选一半后面选一半.

    derivative

    原式等价于求 ((1+zb)^n) 中常数项, 其中 (z^k=a). 直接多项式快速幂每次将 (z^k = a) 带入即可.

    interval

    原问题等价于给定一个区间, 求区间的最小值是否整除区间的 (gcd). 直接用倍增预处理然后二分即可.

    string

    考虑这个问题很像 border, 先建 AC 自动机. 考虑找出 trie 树上根到 T 的链和 fail 树上根到 S 的链的并上深度最大的节点. 在 trie 树上 dfs 然后每到一个点就在 fail 树上查一遍答案, (mathcal{O}(nlog^2n)).

    two

    发现 (f(x)) 是平方级别增长的, 直接暴力枚举询问左右的点在堆里弹出即可.

    walk

    考虑图中度数是奇数的节点的个数.

    • 为 0 : 存在一个点被所有环经过.

    • 为 2 : 存在一个度数为奇数的点被所有环经过

    • 否则 : 答案为 0

    而没有度数是奇数的节点的图, 可以发现如果存在一个点被所有环经过, 那么度数最大的点一定被所有环经过.

    walking

    考虑枚举文本串的每一位, 考虑这一位能匹配到模式串的哪一位, 然后利用以前的数据更新即可.

  • 相关阅读:
    【转】一个lucene的官网例子
    mongodb(回滚)
    mongodb( 实现join)
    JSON.stringify && JSON.parse
    js下的面向对象
    node(规则引擎)
    objective-c(内存管理)
    STM32F0xx_USART收发配置详细过程
    STM32F0xx_GPIO配置详细过程
    STM32F0_新建软件工程详细过程
  • 原文地址:https://www.cnblogs.com/tyqtyq/p/14040490.html
Copyright © 2011-2022 走看看