zoukankan      html  css  js  c++  java
  • 记一次神奇的codeforces

      今天有一场codeforces的div3,时间挺合适,于是就想打。结果发现rating超过1600就不能报名。虽然shzr好久不打CF了而且很菜,但是毕竟还是到了1600的,于是和ZUTTER_一起用原来的一个小号:wzxakioi参加了比赛;

      然而div3是真的简单,虽然网很卡,但是终究还是AK了,找了一个算rating的插件算了一下,发现这一场可以上254...??? 比我的大号都高了...

    A:

      十分简单,扫一遍,需要改就改,没了;

    B:

      从大到小,显然是最优的,如果不放心,就用交换法证一下也行;

    C:

      题意有点模糊,然而其实指的就是普通的覆盖,不要管什么“不严格在里面”就好了。算一下黑色覆盖的面积和,如果等于白色就不行,否则就可以;

    D:

      先排个序,由题意可以得到 $a_1+b_1z=a_2+b_2z=...=a_n+b_nz$ ,考虑减掉 $a_1$ ,整个方程除以 $z$ ,发现 $a_i-a_1$ 必须是 $z$ 的倍数,同时,$z$ 越大,$y$ 越小,所以 $z$ 对于所有的 $a_i-a_1$ 取个 $gcd$ 就好了。然后你会发现 $b_1geq b_2geq ...geq b_n$ ,且只要确定了一个 $b_i$ ,其它的就都确定了,因为要最小化 $sum b_i$ 直接设 $b_n=0$ 就可以了;

    E:

      先二分,找到最后一个完整段的结尾;再二分,找到最后一个完整的数;最后输出正确的位;

    F:

      两个转移:$dp[i]=dp[i-1]+i$; 如果 $i$ 这个位置可以放路由器,那么​ $dp[k]=dp[ max(0,i-k-1) ]+i,kin[max(1,i-k),max(i+k,n)]$ ,这两个操作用线段树可以很方便地实现。

      Update:

      

      --shzr

  • 相关阅读:
    第六周学习报告
    第五周学习任务报告
    第四周学习任务报告
    第三周学习任务报告
    第二周(9.14-9.20)学习任务报告
    Top 参数解析
    unpipc.h
    linux 网络编程卷2 笔记
    mysql 主从及配置
    rsync linux
  • 原文地址:https://www.cnblogs.com/shzr/p/11563813.html
Copyright © 2011-2022 走看看