zoukankan      html  css  js  c++  java
  • SCOI2015题解 && 考试小结

    Day1:

      第一题:裸地二分+网络流:二分答案,连接将每行每列拆成点,对于满足答案的格子行列连边,看是否流量是否大于t即可,可惜第k大看成了第k小,然后100分就没了。

      第二题:倍增,考虑贪心算法,就是考虑选了当前的线段,下一次选的必定是左端点小于当前右端点,右端点尽量靠后的线段,因此在化环为链后,预处理每一个线段的后继状态,当我门选了一条线段后,剩下的选择一定按照刚才的思路选择,所以像lca一样倍增处理每个线段跳2^i次后的位置,对于每一个询问,O(logn)时间向后跳直到覆盖所有区间。

      第三题:半平面交,(考场上没想出来,然后想答案区域一定是一个凸包,所以用随机撒点,维护凸包,套模拟退火,本以为至少能搞到50分,结果10分就把我打发了)考虑每两条边,如果已知他们之间的面积关系,那么由三角形底之比,可算出高之比,满足条件的就是一个类似于角k等分线类似的东西的一侧,进而可以看出这是一个半平面,上半平面交即可。

    Day2:

      第一题:DP,虽然不是魏总说的变态数位DP,但是还是没有做出来,不得不承认我的dp功底实在是太弱了。考虑dp[i][j]表示从第i号点开始遍历子树,以j节点结束,所需要的最小代价是多少,由于这是一个完全二叉树,所以dp数组实际的状态数是O(nlogn)级别的。在来看转移,直接枚举左右子树的结束结点,同样算下来均摊转移复杂度O(logn)【你知道什么是完全二叉树吗?】

      第二题:随便怎么用set什么的维护一下就行了,听大神们说直接找最远点以及旁边三个零区间,去max就行了,考场上脑抽,写了一个二分套线段树。

      第三题:由于危险任务一定是某一时刻之前开始收集情报的人,所以可以树链剖分+主席树维护,O(nlog^2n),但是当时没有想到主席树可以化为静态,所以写的O(nlog^3n)的算法,考试的时候实测还是挺快的,也就没多想,结果交上去T完了!!!真是不知道神大的笔记本有多么良心,还有数据竟然没有一个小点!!!

      oi生涯中第二次也是最后一次省选就这样悲催掉了。

        Day1 0(T1)+100(T2)+10 Day2 0(T1)+100(T2)+0(T3)

      有趣的是两天爆零的两道题正是我考完最有信心的两道题。

      还好两天都有额外的分来保证死的不会太难看,NOIP的成绩也保证了我能进省队,但是肯定与A队无缘了。就姑且当它是一种关于仔细审题,仔细计算时间复杂度的警告吧。

      不就以后还有CTSC和APIO,又得好好准备一番了。

  • 相关阅读:
    仅当使用了列的列表并且 IDENTITY_INSERT 为 ON 时,才能为表'SpeType'中的标识列指定显式值
    SQL Server 创建作业系列问题
    常用WebService收集
    SQL Server中调用WebService的实例
    本地时间与格林威治时间相互转换
    $route和$router的区别?
    超详细的Canal入门,看这篇就够了!
    linux 安装redis 完整步骤
    什么是JSON
    The expression 'list' evaluated to a null value
  • 原文地址:https://www.cnblogs.com/mhy12345/p/4440088.html
Copyright © 2011-2022 走看看