zoukankan      html  css  js  c++  java
  • AtCoder Grand Contest 034

    C

    显然,满成绩的重要度为(r),空成绩为(l)
    且最终的成绩为若干是(X),一个(in(0,X]),若那个不满的成绩不超过(b_i),则选(l),否则选(r)

    D

    暴力的做法是二分图然后费用流,但边数太多了
    (egin{aligned} |x_1-x_2|+|y_1-y_2|&=max(x_1-x_2+y_1-y_2,x_1-x_2-y_1+y_2,-x_1+x_2+y_1-y_2,-x_1+x_2-y_1+y_2)\&=max((x_1+y_1)+(-x_2-y_2),(x_1-y_1)+(-x_2+y_2),(-x_1+y_1)+(x_2-y_2),(-x_1-y_1)+(x_2+y_2))\end{aligned})
    建四个点,与左右两边连,边数(O(n))

    E

    枚举最终点,令其为根
    两个互为祖先的操作显然没意义,将点(i)看作在节点(i)上有(dis(rt,i))个人,每次将不互为祖先的两个人消掉
    有个经典的结论,对于根,令其儿子节点为(son_i),令(d_i)(i)子树的人数,是否满足条件与(max{d_{son_i}},sum d_{son_i})有关
    反复递归最大的子树,看其最小能变成多少人

    F

    可以转为初始为(i),多少次转为(0)
    (p_i=frac{a_i}{sumlimits_{k} a_k})

    [f_i = egin{cases} 0 & i = 0 \ sum_{k=0}^{2^n-1} a_kf_{ioperatorname{xor}k} + 1 & i e 0 end{cases}]

    卷积为:

    [(f_0,f_1,cdots,f_{2^n-1})operatorname{xor}(p_0,p_1,cdots,p_{2^n-1}) = (c,f_1-1,f_2-1,cdots,f_{2^n-1}-1) ]

    由于(sum p_i=1),则(sumlimits_{i=0}^{2^n-1} f_i=c+sumlimits_{i=1}^{2^n-1} f_i-1)
    (c=f_0+2^n-1)

    [(f_0,f_1,cdots,f_{2^n-1})operatorname{xor}(p_0,p_1,cdots,p_{2^n-1}) = (f_0+2^n-1,f_1-1,f_2-1,cdots,f_{2^n-1}-1) ]

    [(f_0,f_1,cdots,f_{2^n-1})operatorname{xor}(p_0-1,p_1,cdots,p_{2^n-1}) = (2^n-1,-1,-1,cdots,-1) ]

    故可以解出(x_0,x_1,cdots,x_{2^n-1})

    但是有多个解的,通解为(x_0+k,x_1+k,cdots,x_{2^n-1}+k)
    由于(x_0=0)(f_i=x_i-x_0)

  • 相关阅读:
    springboot项目使用AOP切面记录用户操作日志
    SpringBoot之——log4j日志配置案例
    IDEA--IDEA debug断点调试技巧
    LINUX FG、BG、JOBS命令用法
    消息队列学习记录
    JDK1.8下载与安装以及配置环境变量
    mysql 时间戳转换为年月日时分秒
    Java关于ExecutorService线程池的使用简介
    idea实现热部署
    MySQL 行行比较sql写法
  • 原文地址:https://www.cnblogs.com/Grice/p/13488701.html
Copyright © 2011-2022 走看看