zoukankan      html  css  js  c++  java
  • csp-s模拟95

    T1:

    [ egin{align} & sum _{i=0}^p lfloor frac{iq}{p} floor \ = & sum_{i=0}^p frac{iq-iq \% p}{p} \ = & frac{ q*sum_{i=0}^p i - sum_{i=0}^p iq \% p }{p} \ = & frac{(p+1)q}{2} - frac{ frac{p}{gcd(p,q)}*(p-gcd(p,q))*gcd(p,q) }{2p} \ = & frac{(p+1)q}{2} - frac{ (p-gcd(p,q)) }{2} \ end{align} ]

     
    T2:
      设格式化前的容量为a,格式化后的容量为b
      当a <= b时,贪心的将a从小到大排序依次格式化一定最优
      当a > b时,考虑若原剩余容量为C,那么格式化一个硬盘i,就是:
    (if C geq a_i C o C-(a_i-b_i))
      我们可以设(C'=c-(a_i-b_i)),那么式子就变为了:
    (if C'+(a_i-b_i) geq a_i C'+(a_i-b_i) o C')
      移项:(if C' geq b_i C'+(a_i-b_i) o C')
      发现式子和a<=b时的一样,可以按b从大到小排序贪心
     
    T3:
      考试时一看题目,2-SAT!!!
      然而并不能处理第一种话
      又想到侦探推理,然而数据范围又这么大……
     
      (我们钦定说第一种话的人是大佬 orz)
      考虑实际上这个环是被大佬切成了好多段,每段中只需知道大佬的真假就可以推出所以人的真假
      考虑枚举说真话的人的个数,然后check
      发现复杂度是(O(n^2))的,不行
      考虑每次重推每个大佬其实挺蠢的,预处理每个大佬说真话/假话时控制的真话/假话的人就好了

  • 相关阅读:
    品优购项目(web)
    Linux
    web前端面试题
    三级网络
    Vue报错:TypeError: Cannot create property ‘xxx‘ on string ‘xxxx
    vue 动态添加页面背景色
    vue 打开新页面 页面滚动到顶部
    ios 系统 h5 页面不发送请求
    小程序返回上一页
    小程序动态设置页面背景色、
  • 原文地址:https://www.cnblogs.com/Gkeng/p/11839570.html
Copyright © 2011-2022 走看看