• Codeforces Round #712 (Div. 1) 题解


    A - Balance the Bits

    考虑将 ( 看做 (1)) 看做 (-1)。那么一个括号序列合法当且仅当每个位置的前缀和均 (ge 0) 并且总和为 (0)

    优先满足第一个条件,有一个显然的保底策略:对于 (s_i=1) 的,两边都添加 (,尽管可能最终总和会过大;而对于 (s_i=0) 的,两边选择前缀和较小的加 (,另一个加 )

    假如说最终两边总和不同,或者总和为奇数,你意识到唯一的调控空间只有 (s_i=1) 的将 ( 换成 ),那么肯定莫得。

    然后就是所谓的调控了,尝试将最后几个 (s_i=1) 的将 ( 换成 ) 使得总和为 (0),然后检查一遍即可。

    B - 3-Coloring

    假如不是“3-Coloring”而是“2-Coloring”,那么唯一靠谱的方法就是黑白染色,而且 ban 颜色就痿掉了。

    然而现在多了一种颜色供我们选择,那么一切就简单了。

    首先还是黑白染色,颜色 (1, 2) 分别占有 (n^2/2) 个预定位置。第一步,我们先填满一种颜色的预定位置,具体的话,哪个被 ban 就填另一个。第二步,剩下的所有位置,周围都只有一种颜色,那么和备选的 (3) 一起,那个被 ban 就填另一个。

    C - Travelling Salesman Problem

    大 力 整 结 论 /dk

    首先,将题意转化:(i o j) 的代价为 (max(c_i, a_j-a_i)=max(0, a_j-(a_i+c_i))+c_i)。后面的 (c_i) 是确定的,直接记入答案。再者,观察式子发现,如果将这些城市按 (a) 排序,那么从后往前走的代价必然为 (0),这意味着我们只要考虑从第 (1) 到第 (n) 个城市的最小花费即可,中间城市可以任意选,没有选的城市可以在 (n o 1) 的时候解决。

    考虑当前第 (j) 个城市。观察式子不难发现,要使其尽量小,前一个落脚点 (i)(a_i+c_i) 应该尽量大。不妨设 (f_j=max_{i<j} {a_i+c_i})。如果 (f_j < a_j),那么我们就落脚城市 (j)。虽然实际上并不是所有的落脚点都是这样的 (j),但其他的很显然代价为 (0)

    时间复杂度 (O(nlog n)),瓶颈在排序。

    D - Flip the Cards

    咕咕咕

    E - 2-Coloring

    题中所给的条件及其复杂,于是挖掘一下性质:蓝色的位置集中在上下两侧,作为两个连通分量;由于每行都应有一个蓝色的横段,下连通分量的顶端行号 (+1) 恰好等于上连通分量;由于每行有且只有一个蓝色横段,那么整个连通分量的上(下)轮廓为单峰;又因为要留给黄色竖段的位置,于是上下两个连通分量不能连通(四连通)。当然这不一定含括了本题的所有情况。

    考虑怎么算这个东西:由于是单峰的,不妨拆成两段:设峰高为 (h),最右侧的峰值在 (i) 位置。那么相当于要计算有几条从 ((0, 1))((i,h)) 的(只走上右)路径,然后和从 ((i+1,h-1)) 之后一条结构相同的路径组合。类似的,设 (j) 为上面的连通分量的峰值(最左侧)。不妨令 (i<j),那么整个式子为:

    [sum_{h=1}^{n-1}sum_{i=1}^{n-1}sum_{j=i+1}^n {i+h-1choose h} {n-i+h-1choose h-1}{j+m-h-2choose m-h-1}{n-j+m-hchoose m-h} ]

    如果这是你发现了蓝色和黄色在 (n,m) 互换之后地位相同,那么别急着 ( imes 2),因为当 (j=i+1) 时会算重,把他改成 (i+2) 就行了。注意到最后整个东西要 ( imes 2),因为我们钦定了 (i<j),实际上可以反过来。

    最后,这个式子是 (O(n^3)) 的,但实际上吧前两个组合数提到最后那个 (Sigma) 之前,就不难发现它可以前缀和优化,复杂度 (O(n^2))

    F - Balance the Cards

    咕咕咕

  • 相关阅读:
    PhoneGap打包webApp
    mysql触发器实例说明
    mysql索引总结
    python:生成器
    python:装饰器
    python:局部变量与全局变量
    python:函数
    python:文件操作
    python:集合及其运算
    python:字符串常用函数
  • 原文地址:https://www.cnblogs.com/-Wallace-/p/sol-cf-712.html
Copyright © 2020-2023  润新知