zoukankan      html  css  js  c++  java
  • 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$。

  • 相关阅读:
    js canvas登陆验证
    媒体查询
    js读取excel中日期格式转换问题
    jquery获取元素对应高度
    js引用类型的赋值
    asp.net core mvc视频A:笔记2-4.ActionResult(动作结果,即返回值)
    asp.net core mvc视频A:笔记2-3.高级数据绑定
    asp.net core mvc视频A:笔记2-2.接收数据
    asp.net core mvc视频A:笔记2-1.控制器定义
    asp.net core mvc视频A:笔记1.基本概念介绍
  • 原文地址:https://www.cnblogs.com/Duan-Yue/p/11772061.html
Copyright © 2011-2022 走看看