• Codeforces Round #170 (Div. 1 + Div. 2)


    A. Circle Line

    • 考虑环上的最短距离。

    B. New Problem

    • (n) 个串建后缀自动机。
    • 找的时候bfs一下即可。

    C. Learning Languages

    • 并查集维护可以沟通的人。
    • 注意会0种语言的人必然要学习。

    D. Set of Points

    • 构造类似于(y = frac{1}{x}) 的两条曲线即可。

    E. Game

    • 本质其实就是个Nim博弈。
    • 若先手胜,要找出第一步的可行解,即判断$$sg xor a_i le a_i$$

    D. Google Code Jam

    By the Google Code Jam rules the time penalty is the time when the last correct solution was submitted.

    • 对于probFail=0的题目,如果要解决的话,必然是放在probFail前面。
    • 对于probFail=1的题目,显然不会去浪费时间。
    • 剩下的就是0<probFail<1的题目之间的相对顺序了,考虑两道题目(i,j)的相对顺序,因为得分不会相互影响,只需要考虑罚时即可。
    • [(t_i+t_j)(1-p_j)+t_i(1-p_i)p_j<(t_j+t_i)(1-p_i)+t_j(1-p_j)p_i \ frac{t_ip_i}{1-p_i} < frac{t_jp_j}{1-p_j} ]

    • 根据上述不等式对题目排序,(dp(i,j))表示前(i)道题目花费(j)时间的最优值。

    E. Binary Tree on Plane

    • 除了根节点外,其余节点均有1个父节点,那么就可以构出一张二分图:左边表示父节点,右边表示儿子节点,跑一遍最小费用流即可。最大流需要等于(n-1)
  • 相关阅读:
    前端 一——介绍
    python知识点拾遗
    python 五——自定义线程池
    python 四——线程、进程、协程
    python 三——列表、字典、元祖、字符串、set
    动态规划法求解0-1背包
    贪心法求解背包问题
    学生成绩管理系统
    [C语言练习]学生学籍管理系统
    [C语言练习]万年历加强版
  • 原文地址:https://www.cnblogs.com/mcginn/p/6206520.html
Copyright © 2020-2023  润新知