zoukankan      html  css  js  c++  java
  • ABC224

    ABC224

    A

    签到

    B

    签到

    C

    枚举三个点,判断是否在一条线上把(frac{x_1-x_2}{y_1-y_2},frac{x_2-x_3}{y_2-y_3})判断分数交叉相乘变成判断整数

    D

    (bfs),每次找空着的位置无脑缓过来

    E

    显然按权值排序,每个点从自己对应的行和列里面最大的转移,然后更新自己所在的行和列

    F

    对于第(i)位数字

    如果在他后面加(+),那么它将作为个位数,有(2^{n-1})种方法

    如果在他后面不加(+),他作为十位数,在他后面一位后加(+),有(2^{n-2})种方法

    ……

    如果在后面(i)为才加(+),有(2^{n-i-1})种方法

    注意总共有(2^n)种方法,最后一位时要把剩下的方法全加上

    G

    可以证明(+1)是不会出现在重开操作之前的,只存在三种情况:

    (1)当(Sleq T)时,无脑(+1),代价是(A(T-S))

    (2)无脑(roll)(roall)(T)的概率是(frac{1}{N}),期望代价(BN)

    (3)先(roll)点,考虑当(roll)到一个范围([L,T])时,(+1)会比无脑继续(roll)期望代价更小

    答案是三者的最小值,讨论一下最复杂的第三种情况:

    对于一个点数,(roll)([L,T])范围内的概率是(frac{X}{N}(X=T-L+1)),期望代价(frac{BN}{X})

    无脑(+1)的期望概率(=sum_{i=L}^{T}frac{A(T-i)}{X}=frac{A(X-1)}{2})

    (f(X)=frac{BN}{X}+frac{A(X-1)}{2})

    根据基本不等式,(X≈sqrt{frac{2BN}{A}})时,(f(X))取最小值

    (sqrt{frac{2BN}{A}})周围取(10)个数对答案取最小值

    H

    关于线性规划对偶性的一份说明

    根据题目,有:

    [min{sum_{i}A_il_i+sum_{i}B_ir_i}\ 同时满足:\ (l_i+r_j)geq C_{i,j}\ l_igeq0,r_igeq 0 ]

    提出

    [(l_i+r_j)geq C_{i,j}\ 对两边同时乘以非负实数\ k_{i,j}(l_i+r_j)geq k_{i,j}C_{i,j}\ ]

    取对偶问题

    [max{sum k_{i,j}C_{i,j}}\ 同时满足:\ sum_{j}k_{i,j}leq A_i\ sum_{j}k_{i,j}leq B_i\ k_{i,j}geq 0 ]

    这样就好办了,原点向左侧(L)个点的连流量为(A_i),费用为(0)的边,右侧(R)个点向汇点连流量为(B_i),费用为(0)的边

    (L_i)(R_j)连流量为(inf),费用为(C_{i,j})的边

    最大费用最大流

    更无脑的方法:

    把价值换成限制,把限制换成价值,把不等于号开口取反,上网络流

  • 相关阅读:
    go语言浅析二叉树
    Go语言冒泡、选择、插入、快速排序实战浅析
    go语言教程之浅谈数组和切片的异同
    实测Maven上传jar包到私服的方法归纳
    干货|Dubbo社区开发者日经验分享
    Go语言系列开发之延迟调用和作用域
    mysql中间件分享(Mysql-prxoy,Atlas,DBProxy,Amoeba,cobar,TDDL)
    时间操作
    大型网站架构设计方向初探
    C#输入法
  • 原文地址:https://www.cnblogs.com/knife-rose/p/15477897.html
Copyright © 2011-2022 走看看