zoukankan      html  css  js  c++  java
  • 10.6 牛客

    10.6 牛客

    唯一感觉能做的一场

    感觉能做的原因是有分


    得分情况

    100 + 0 + 50 + 5 = 155

    T2 因不会写暴力而卑微爆零


    题解

    T1 串串串

    发现只有奇偶有关 又都是 (01) 串 直接维护前缀和作差即为答案


    代码


    T2 方格计数

    一个结论: 网格图中对于两个点 设 (a) 为其横坐标的距离 (b) 为其纵坐标的距离 那么这里面可以选择的点的个数有 (g = gcd(a, b) - 1)

    原题相当于在这条线上再找 (n - 2) 个球 放到 (g) 个盒子里面 相邻两个球的盒子编号至少为 (k) 这个东西的方案数为 ({g - (n - 1) imes (k - 1) choose n - 2})

    所以可以直接枚举网格中的两个点计算答案

    复杂度 (O(TW^2H^2))


    对相同的 (a, b) 方案数相同 考虑枚举 (a, b) 算出答案后再乘上 ((W - a + 1) imes (H - b + 1))

    复杂度 (O(TWH))


    代码


    T3 树数树

    一个节点 (u) 可以将子树中两个序列拼成一个序列 处理完 (u) 的父亲时 (u) 已经不用管了 可以用堆维护出 (u)(u) 的子树中的点能组成的序列 转移将所有子树的堆合并 取出最大的两个合并成一个 合并直接暴力启发式

    复杂度 (O(nlog^2n))


    代码


    T4 序列

    放弃治疗

  • 相关阅读:
    ch_5102 Mobile Service
    ch_POJ1201 Intervals
    [CodeVs]谁是赢家
    树上莫队
    [NOI2009]管道区珠
    拉格朗日差值
    Simpson&自适应Simpson
    数论学习笔记
    hibernate FetchType理解
    Hibernate的generator属性之意义
  • 原文地址:https://www.cnblogs.com/blank-space-/p/15399840.html
Copyright © 2011-2022 走看看