• CSPS模拟 46


      勿忘国耻。

      由于重新评测我看到了不是很真实的一幕

      

      紧接着是更不真实的一幕

      

      就在虚假形象快要建立完成的时候

      

      它由于来自东方的神秘力量倒塌了

      被两个学校的大佬爆踩了(捂脸  

      T1 无脑背包?  

        考试时想1h想到吐血

        想不到什么比(除)$n^2$更(背包)(之外)的算法了

        真是深陷套路无法自拔啊

        没有好好在对$n$取模上做突破

        另外我也一直不清楚前缀和可以有$n+1$个位置,能怪谁啊$qwq$

      

      T2 无脑求众数?

        康了眼内存,16MB

        好像只能开个4e6的样子..

        开始考虑开数组骗分 为什么毒瘤出题人不给开成2MB这样我没准还能向正解靠拢

        

        那么其实我们并不是真正要求出众数,而是只关心那些出现次数超过了总数一半的数

        它有个神奇的性质,(想到它也正是因为这条性质)那就是它和与他不相等的数相互抵消之后

        一定不会被消净

        于是出现了神奇的处理方式,维护一个$id$,一个$cnt$

        $id$表示目前有可能是众数的数是谁,$cnt$是他消后的数量

        每生成一个$A[i]$,就更新一下两个变量,如果和$id$相等就给$cnt$加一,否则消去一个

        最后剩下的id就是可能的那个数

        再生成一遍统计他的次数。

      T3 不可做?

        康了一会发现是trie树,好像还挺可做的

        从数据范围看出只能承受$nlogn$

        那么trie树上每个节点只能$O(1)$了?

        所以要答案推答案?

        

        那初始答案只能是从底部开始了,那时候的排名是$n-1$

        此时是假定天数的二进制是和此人的能力值完全吻合,所以不断上行的过程时

        应该考虑“在这一位突然走向另一位”的答案

        这时此人的排名会前移,移的位数是另一个儿子的$size$

        发现答案的形式是一堆平方相加,仿佛可做

      

        如果走向另一个儿子的话,大不了这个儿子所有人一起前移,而这个儿子内部的相对排名仍然是那么多种

        所以直接把这个儿子的答案$copy$一遍,把前移而减少的贡献减去,加到一起就完事了

        (我是不是水题了)

  • 相关阅读:
    Python学习笔记
    Python学习笔记
    不定宽高垂直居中分析
    PhoneGap安装配置
    Mongoose学习参考资料
    我的node+express小例子
    node+express+mongodb初体验
    stylie工具轻松搞定css3抛物线动画
    fis前端开发框架
    Fiddler实现手机的抓包(转载园友小坦克)
  • 原文地址:https://www.cnblogs.com/yxsplayxs/p/11547865.html
Copyright © 2020-2023  润新知