• Codeforces 1111


    1111 B

    题意

    (n) 个人,每个人有一个属性 (a_i) ,现在你可以进行 (m) 次操作,每次你可以踢掉一个人或者将一个人的水平值+1,每个人最多加 (k) 次,问最大可能的平均属性值。 ((1le nle 10^5))

    Examples

    input
    2 4 6
    4 7
    output
    11.00000000000000000000
    input
    4 2 6
    1 3 2 3
    output
    5.00000000000000000000

    排序,预处理后缀和,枚举踢掉人的个数,计算。

    1111 C

    题意

    有一个 (2^n) 的线段,上面有 (k) 个怪物,你首先在处理 ([1,2^n]) ,每次你可以:

    • 将当前区间分成左、右两个长度相等的区间;
    • 销毁当前区间。如果区间里没有怪物,花费 (A) ;否则花费 (B*N*l)(N) 指当前区间中的怪物, (l) 指当前区间的长度。

    问销毁整个大区间的最小花费。
    ((1le nle 30,1le kle 10^5))

    Examples

    input
    2 2 1 2
    1 3
    output
    6
    input
    3 2 1 2
    1 7
    output
    8

    dfs+剪枝
    如何查询一个区间里有多少个怪物?upper_bound-lower_bound

    1111 D

    题意

    钢铁侠必须要选择类型和x,y两洞穴中类型相同的反派,把它们移动到殖民地的前半部或者后半部,并且剩余的反派,如果是同一类型,也要呆在同一边。问这样移动的方案数。
    (|s|,qle 10^5)

    Examples

    input
    abba
    2
    1 4
    1 2
    output
    2
    0
    input
    AAaa
    2
    1 2
    1 3
    output
    2
    0
    input
    abcd
    1
    1 3
    output
    8

    (dp[i][j]) 表示只考虑两部分中的一部分,字母 (i,j) 都在这一边的方案数。
    对于 (x,y) ,答案为: (2*dp[x][y]*frac{(frac{|s|}{2}!)^2}{Pi cnt_i!}(i为所有字母))

  • 相关阅读:
    常见限流算法
    spring aop 事物
    Java序列化和反序列化为什么要实现Serializable接口
    java类在何时被加载?
    mysql 排序 是怎么工作的?
    程序员转正述职报告
    .NET中使用Channel<T>
    .NET-服务承载系统(Hosting)(支持Cron表达式)
    JObject拼接Json字符串
    NET5 使用FTP发布
  • 原文地址:https://www.cnblogs.com/BlogOfchc1234567890/p/10498262.html
Copyright © 2020-2023  润新知