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 序列
放弃治疗