zoukankan      html  css  js  c++  java
  • NOIP2017最后两天想到的杂七杂八

    之前还想每天写总结然而时间根本不够用,想了想还是写写对考试过程中的自己的提醒吧。

    想到什么就写什么吧,如果NOIP不崩以后还用得到(崩的话就留着造福人类吧......)


    1.考试前的试机,建议按照以下顺序打模板,时间不够优先打前面的部分:

    (1)每个程序的程序名、文件读入输出、主框架(包括快读、typedef、define等等);

    (2)对拍与数据生成器;

    (3)链剖求LCA;

    (4)zkw实现RMQ;

    (5)树状数组的基本操作;

    (6)快速幂、扩欧,线性筛法求质数、欧拉函数值、逆元;

    (7)floyd、dijkstra、SPFA(差分约束) ;

    (8)线段树的建树、下传标记什么的;

    能打完可真是谢天谢地......

    当然没打完的话比赛开始马上放掉,题目重要......

    2.考试的时间安排:

    (1)进考场--8:30:调试机子保证没问题,显示扩展名、开最大警告什么的基本操作。建完文件夹然后就可以敲板子了。

    (2)8:30--9:00:半个小时基本就写完T1了。写完重新仔细读题和静态查一下是否有错,能过大样例基本就认为没什么问题。时间应该是足够的。

    (3)9:00--9:15:仔细读T2、T3的题目,保证搞懂题目意思,不理解或模棱两可就马上举手问,别浪费时间。

    (4)9:15--9:45:选一道觉得做出来可能性较大或者有点思路的题目想,结合样例,想出做法的话可以马上尝试去写。

    (5)9:45--10:30:这时候如果还是想不出正解就一定要开始写暴力了,尽量分细一点,暴力一定要保证正确性(大数据可以考虑贪心......)

    (6)10:30--10:55:想另一道题,中途多用草稿纸或暴力程序,想到一定要仔细验一下正确性,因为想错去码可能会浪费太多时间。

    (7)10:55--:10:55起一定要开始敲了(不管想没想出),因为越往后面可能会越乱,情绪可能会不太稳定。

    (8)(假如有的话)先检查一遍准考证号、文件夹、题目名、文件读入输出等最重要的东西;然后按自己确定的顺序开始查错,保证该拿的分一定要拿到。然后可以试着想一下暴力优化啊卡常啊之类的技巧,如果想到疑似正解一定要开副本。

    (9)考试结束后,拒绝对答案,调整好心态。

    3.考场上的idea:

    (1)看数据范围猜时间复杂度,O(nlog(n))一定要先想二分和三分,然后想矩阵,最后再想数据结构;O(n2)多半是dp,数据范围贼小多半是爆搜+剪枝或状压。

    (2)看空间限制,多维可能会爆考虑压维、滚动数组、垃圾回收。

    (3)树上的考虑倍增。

  • 相关阅读:
    【LeetCode】048. Rotate Image
    【LeetCode】036. Valid Sudoku
    【LeetCode】060. Permutation Sequence
    【LeetCode】001. Two Sum
    【LeetCode】128. Longest Consecutive Sequence
    【LeetCode】081. Search in Rotated Sorted Array II
    【LeetCode】033. Search in Rotated Sorted Array
    顺时针打印矩阵
    矩形覆盖
    二维数组中的查找
  • 原文地址:https://www.cnblogs.com/JKAI/p/7784609.html
Copyright © 2011-2022 走看看