• 模拟测试20190905


    这次主要反思一下考试心态吧,毕竟这次挺炸的

    上来看了10分钟T1想到正解,20分钟码完,10分钟拍上,一看时间7:00,然后我就飘了开始看T2

    过了十来分钟想到了一个式子,刚开心着发现那个式子没法约分

    然后肛到了8:40,无果,弃了T2去看T3

    刚开始以为可做,然鹅实现起来细节巨多,码到9:20无果,扔了个puts("-1")上去

    剩下的时间按照自己的式子疯狂码T2,过不了样例,GG

    最后总分$100+10+10=120pts$,rank3我也不想说什么,毕竟比大脸少了120pts

    回顾这场考试,如果T2能一直朝着2最初的想法钻还是有可能A掉的

    T3如果实现的时候不紧张应该可以多拿一点分的

    如果脸和skyh一样大应该是可以拿rank1的

    继续努力

    T1:简单的区间

    考完我不太明白为什么要启发式合并,这不是普通分治吗。。。。。。

    $solve(l,r)$表示处理$[l,r]$这个区间,考虑怎么处理跨区间的情况

    考虑把情况分成两种:最值在左边和最值在右边,这里考虑最值在右边(左边同理)

    从中间向右边扫右儿子,由于最大值满足单调性,让一个单调指针去扫左儿子,同时保证左边的最大值不大于右边目前的最大值

    用桶统计答案就好了

    复杂度$O(nlogn)$

    T2:简单的玄学

    我们根据题意很容易得出这样一个式子

          $ frac{2^{nm}-prodlimits_{i={2^{n}-m+1}}^{2^{n}}i}{2^{nm}} $

    看起来好像没法做的样子,我们把式子拆开看看

        $ 1-frac{prodlimits_{i={2^{n}-m+1}}^{2^{n}}i}{2^{nm}} $

    这个柿子看起来需要连乘$m$次,但是我们发现每$1e6+3$个数里一定有一个$1e6+3$的倍数,那么分子就是$0$

    然后我们考虑约分的问题,显然$(?)$对于任意$1leq i<{2^{n}}$,$i$与$2^{n}-i$所含2的个数相同

    然后问题转化为求${(m-1)}!$中含2的个数,这个有很经典的$O(log)$求法

    T3:简单的填数

    显然在合法的情况下我们要使得每个数出现尽量少

    设二元组$up(i)$和$down(i)$,$up(i)$表示第i位的最大可能值以及前面最多有多少个和他相同,$down(i)$同理

    简单转移就好了

    最后求序列只要让序列在满足$up$和$down$的情况下尽量大/小就好了

    复杂度$O(n)$

  • 相关阅读:
    本地安全策略
    windows本地用户及组的区别
    mysql基本命令总结
    常用DOS命令
    AES加密算法详解
    ctf密码学习题总结
    CTF最简单的Web题
    python进阶篇
    JNI开发流程
    JDK中的Timer和TimerTask详解
  • 原文地址:https://www.cnblogs.com/mikufun-hzoi-cpp/p/11474663.html
Copyright © 2020-2023  润新知