zoukankan      html  css  js  c++  java
  • 联赛模拟测试 15

    A.游戏

    每个装备只能用一次,那么我们就可以考虑二分图匹配。
    用装备向它的属性值建边,然后从属性值的 (1) 开始跑匈牙利。
    如果不能匹配了就是最大的攻击次数。

    需要注意,如果每次 (memset) 一定会 (T) ,所以我们记录一个时间戳,每次判断 (vis) 数组是否等于时间戳即可。

    B.嘟嘟噜

    裸的约瑟夫问题,容易得到通项公式 (p_{i} = (p_{i-1} + m) % i)(i) 为剩余人数。
    数据范围 (1e9) ,直接 (O(n)) 不可过,看到 (m) 远小于 (n) ,于是可以优化。
    我们找到一次最多可以条几步,然后直接加上这么多,时间大大优化,可过。
    跳的步数应该是 (min(n - i - 1,frac{i - x}{m}- 1))

    C.天才绅士少女助手克里斯蒂娜

    题目给出的是向量相乘,即叉积。
    设两个向量为 ((x,y),(a,b)) ,其叉积为 ((ay-bx)) ,然后我们就可以推柿子。

    [egin{array}{ll} ans &=& sum limits_{i=l}^r sum limits_{j=i+1}^r (v_i imes v_j)^2 \ &=& sum limits_{i=l}^r sum limits_{j=i+1}^r (x_iy_j-x_jy_i)^2 end{array} ]

    然后我们继续乘法分配率:

    [egin{array}{ll} ans &=& sum limits_{i=l}^{r} sum limits_{j=i+1}^r (x_i^2y_j^2+x_j^2y_i^2-2x_iy_ix_jy_j) \ &=& sum limits_{i=l}^r sum limits_{j=i+1}^r x_i^2y_j^2 + sum limits_{i=l}^r sum limits_{j=i+1}^r x_j^2y_i^2 - sum limits_{i=l}^r sum limits_{j=i+1}^r 2x_iy_ix_jy_j \ &=& sum limits_{i=l}^r sum limits_{j=l}^r [i!=j] imes x_i^2y_j^2 - sum limits_{i=l}^r sum limits_{j=l}^r [i!=j] imes x_iy_ix_jy_j \ &=& sum limits_{i=l}^r x_i^2 (sum limits_{j=l}^r y_j^2 -y_i^2) - (sum limits_{i=l}^r x_iy_i (sum limits_{j=l}^r x_jy_j - x_iy_i)) \ &=& sum limits_{i=l}^r x_i^2 sum limits_{j=l}^r y_j^2 - sum limits_{i=l}^r x_i^2y_i^2 - (sum limits_{i=l}^r x_iy_i sum limits_{j=l}^r x_jy_j - sum limits_{i=l}^r x_i^2 y_i^2) \ &=& sum limits_{i=l}^r x_i^2 imes sum limits_{i=l}^ry_i^2 - (sum limits_{i=l}^r x_iy_i)^2end{array} ]

    线段树维护 (sum limits_{i=l}^r x_i^2) , (sum limits_{i=l}^r y_i^2) , (sum limits_{i=l}^r x_iy_i) 即可。

    D.凤凰院凶真

    最长公共上升子序列 (LCIS) 板子。
    枚举的时候记录一下上次的更新位置和更新点即可,输出方案的时候递归输出。

    (Never Give Up)

  • 相关阅读:
    Jenkins 集成Sonar scanner的使用案例
    Sonarqube 安装 及与Jenkins sonar scanner插件集成部署
    shell if 判断匹配1位数字
    使用tcpdump抓包
    golang + snap7 对西门子plc进行读写
    python基础练习题(题目 求输入数字的平方,如果平方运算后小于 50 则退出)
    python基础练习题(题目 统计 1 到 100 之和)
    python基础练习题(题目 使用lambda来创建匿名函数。)
    微服务状态之python巡查脚本开发
    python基础练习题(题目 计算两个矩阵相加)
  • 原文地址:https://www.cnblogs.com/Vocanda/p/13832068.html
Copyright © 2011-2022 走看看