• csp-s模拟95


    近两场开始文件评测,感觉和平时真不太一样。

    考试时间是多了$10min$,但处理文件、输入输出什么的杂事也是忙来忙去。这可能也最像真实的$csps$了,稍有疏忽可能都是致命伤。

    T1、T2挂的对拍全打空了,最后$15$分钟回头想到我的T1写的式子中间量会爆$long$ $long$,当时就想着打高精了,结果还没弄出来。事后发现化简式子就可过。

    这样下来三道题都只有暴力分了。

    T1:

      先考虑不向下取整。对于分子,可以等差数列求和。向下取整的话就再减去每个分子模$p$的和。这一部分实际上是若干个循环节(共$frac{p}{gcd(p,q)}$个),每个循环节是一个等差数列。

    T2:

      贪心。设$a$为格式化前的容量,$b$为格式化后的容量。若只存在$a>b$的情况,我们按$a$增序排列一定最优(可用空闲容量一定不减,考虑先处理需求小的)。考虑此过程的逆过程,即:$a$从大到小地选取,并且每次格式化后容量减小,这其实和$a>b$的情况是一样的。所以$a>b$的话就以$b$降序排列。两者都有的情况,先做$a<b$使可用容量增多,再做$a>b$。

    T3:

      先考虑没有第一种人的情况。只要确认一个人真假顺推回来检查是否冲突即可。

      难点在于第一种人的真假。突破口也在于第一种人。取值相同的第一种人是共生关系,取值不同则是互斥关系。根据这个我们可以枚举有多少人说了真话,这样可以直接确认第一种人的真假,再退回去即可得到全部的真假。这样$O(N^2)$。我们只关心每种情况下真假的人数,预处理每个第一种人为真/假时的真/假的人数,即可$O(1)$ $check$。

  • 相关阅读:
    kali2018 安装****
    IIS PUT
    解析漏洞总结
    深入理解MVC
    Linux常用命令整理
    nginx视频直播/点播服务干货分享
    记因PHP的内存溢出导致的事故之解决
    五环之歌之PHP分页
    phpstorm 2017.1 激活
    拉伸收缩广告
  • 原文地址:https://www.cnblogs.com/Duan-Yue/p/11772061.html
Copyright © 2020-2023  润新知