• 省选模拟41


    A. 要换换名字

      要求匹配的问题应该可以很自然的想到二分答案+网络流。

      然而发现子序列的个数非常多,如果全建出来复杂度会死。

      然后可以发现,某个串的多于$n$个的子序列是没有意义的,所以每个串只找出来$n$个子序列即可。

    B. 动态半平面交

      和曾经考过的一道题很像,然而那个题当时使用线段树合并过的,因为并没有强制在线。

      将每个质因子的若干次幂当成一种点,每种点有一个权值,那么一个点的答案就是范围内所有出现过的种类的权值的乘积。

      所以这个东西可以用树链的并来维护,也就是在dfs序相邻节点的lca处进行容斥。

      所以只要将$p^k$看成是k种点,每种点的权值都是$p$,那么就可以简单的维护。

    C. 获取名额

       不难发现最终要求的是这个东西:$1-prod_{i=l}^r(1-a_i/x)$
      发现在$a/x$较大的时候,这个东西会迅速收敛,只需要较少的迭代次数就可以达到精度要求。
      在$a/x$较小的时候,并不能迅速收敛,但是可以发现这个东西对精度的影响不大,所以可以考虑取ln之后暴力泰勒展开取前几项系数,可以发现这个系数种$a$被独立出来了,所以可以单独处理。
      所以现在的问题是,找到所有$a/x$很大的点,这个东西分治一下就可以了,由于期望找到$log$个就会满足精度要求,而找到一个的复杂度是$log$,所以总的复杂度就是$log^2$。
     
  • 相关阅读:
    Java中==和equals的区别
    (转)JAVA-反射机制的使用
    JAVA三框架工作原理是什么?
    Spring的IoC模式
    JavaEE中为什么出现中文乱码?
    Android--Apache HttpClient(2种实现)
    Android之网络----使用HttpClient发送HTTP请求(通过get方法获取数据)
    Android—Http连接之GET/POST请求
    2014 12 04
    struts2的HelloWorld的基本过程
  • 原文地址:https://www.cnblogs.com/hzoi-cbx/p/12451870.html
Copyright © 2020-2023  润新知