拿到题目先写裸的暴力,暴力一定要写对,没想出正解有暴力垫底,想出了正解也可以拿来拍

  过了样例之后一定要造数据测,数据越坑越好

  一定要造极限数据,哪怕造不知道答案的数据都行,主要是检测RE和TLE,正确性用拍来检测

  如果目前已经可以拿到很高的分,可以考虑放弃剩余的小分数,把时间留给其它地方

  题目一定要认真仔细看清楚,坚决避免代码写完了结果题目看错的情况

  样例一定要手动分析一遍,或许分析的过程中就能找到思路,同时分析样例也是帮助理解题意

  简单的题目要照简单的方法做,不要想着一些高大上的东西,只要能过就行

  注意数组的大小,在不爆空间的情况下宁愿开大一点

  遇到题面很难读懂的题目一般都是水题,只是它的外表迷惑了你

  特殊的数据要写骗分,比如m=1或者k=n之类的

  代码里用 if 判断选择不同数据范围,小的数据用暴力,大的数据写正解,这样是最保险的

  想不出来的一定不能空着,哪怕猜个结论,输出个n/2,随机一个数都可以

  连通性想到并查集,这是很优秀的一个数据结构

  DP方程可以做变形,从中发现是否具有单调性,或者可以做斜率优化等等

  对于一个正整数n,可以用二进制来表示,也就是每一位可以用若干个2k相加来表示

  范围给的很小的题目正解通常就是搜索,如果搜索跑不出来可以想想状压DP

  只有一个数字的输入或者范围给的太大(如n=231)往往能够O(1)地做,而且一般这种题目能够打表找规律,或者推出O(1)的公式,或者根据n来骗分也可以;如果公式推出来是O(n)的但是答案是有规律的,那么可以分段打表

  哈希值要定好,两个大的哈希模数是109+9和109+7,乘的p取6-8位的质数,可以用106+7和106+9

  求最值题先想贪心,再想DP,二分答案,如果想不出来正解可以贪心骗分

  DP发现时间复杂度不对但是优化不了的时候,可以随机前面的状态转移,随的次数根据时间去计算

  贪心要去证明它的正确性,可以找反例,或者拿暴力去拍

  正确性不确定的算法一定要拍

  一般题目都不会卡SPFA,有时SPFA比Dijkstra+堆还快

  在判断 x>0 的时候一定要想 x 会不会有负数的情况,如果有负数单单写个 if(x) 是错误的

  字符串千万别用gets读入,scanf("%s") 是以空格或者回车作为字符串的结束标志

  许多二分栈可以优化成单调队列

  记忆化搜索容易写,不用想DP的拓扑关系,缺点是无法剪枝,所以要算好复杂度

  欧几里得距离是实际的距离,曼哈顿距离是横纵坐标差的和,切比雪夫距离是取max(横纵坐标差),也就是国际象棋王走的最短距离

  DP找不到单调性的时候可以把状态打出来,寻找它的单调性

  经典的模型一定要会写,而且要写得熟练

  DP的转移可以用数据结构维护之前的状态

  有些题目的正解就是从暴力一步步推出的,或者是一些特殊数据的算法的结合版

  最长前后缀可以用KMP的预处理线性得出

  带条件限制的最短路可以增加一维状态来做

  对于0,1之类的小数据要做特殊判断

  数据范围是n<231时不能直接 for(;i<=n;i++),因为i=231-1时再i++就会变成负数

  一般有最优性剪枝的搜索都可以卡时

  如果对于每个询问都要做相同的预处理,可以把连续的询问放在一起预处理,这样效率会高些

  题目要求选择一些特殊的点时,将这些点加上或者减去一个数会影响答案,那么这就可以进行二分

  裸的数据结构题先打暴力,一般这类题的正解又臭又长,很难短时间内写对

  类似于八车问题,可以用把行和列拆成点做二分图匹配

  若要求数列中某个数不为其中两个数之和(或同一个数的两倍),那么最多可以放的数为最小的数的值

  代码一边写要一边想,争取一次打对

  贪心证明是错的题目,或许能够贪心+调整做

  如果实数比较要求输出3位,一定要输出4位及以上,总之要比它至少多一位

  long double不能直接输出,要转成double再输出

  整数除以整数,即便是赋值给实数,得到的也是整除的结果

  式子里至少有一个long long,否者会爆int

  如果下一行要读入字符串,那么这一行的scanf("%d",n)要加上\n变成scanf("%d\n",n)

  每道题都可以加读入和输出优化

  一个环可以复制一遍接到后尾成一条2n的链,这样可以选断点的时候操作更简便

  如果一个点为两点之间的必经点,那么删去这个点会导致这两点不连通

  要求乘积的最值,可以转换成把每个取对数相加的最值

  树上倍增转移值时,g[j][i]=g[j][i-1]+g[f[j][i-1]][i-1],右边g的第一维中为f(祖先),不为g

  如果在拍中还输出了别的东西,提交的时候一定要改回来

  在最终提交前,要把所有代码都测一遍样例

  在个人文件夹下建子目录,外面也要放源程序

  如果有多组数据,可以把样例合在一起再测一遍

  如果long long加了读入优化,读入一定要改成long long,也就是说换了类型的变量在所有读入和输出中都要换

  卡时的地方判断一定要是 if (clock()>TL*CPS) 一个不能错

NOIP总结的更多相关文章

  1. NOIP模板整理计划

    先占个坑 [update]noip结束了,弃了 一.图论 1.单源最短路 洛谷P3371 (1)spfa 已加SLF优化 #include <iostream> #include < ...

  2. NOIp 11.11/12

    最后一场比较正式的NOIp模拟赛,写一发小总结.题目没什么好说的,大部分很简单,先贴一下代码. 1111 T1 //string //by Cydiater //2016.11.11 #include ...

  3. NOIp 1109

    停课后的第一场模拟赛,应该不会怎么说今天的模拟赛,除了第一题不知道那种筛法的复杂度是$log$的没敢写,其他都挺水的.另外,第三题的数据也弱化了,建议去这里再交一遍. 贴一下AC代码,有兴趣可以参考一 ...

  4. NOIp 2016 总结

    NOIp 2016 总结 -----YJSheep Day 0 对于考前的前一天,晚自习在复习图论的最短路和生成树,加深了图的理解.睡得比较早,养足精力明日再战. Day 1 拿到题目,先过一边,题目 ...

  5. 历年NOIP水题泛做

    快noip了就乱做一下历年的noip题目咯.. noip2014 飞扬的小鸟 其实这道题并不是很难,但是就有点难搞 听说男神错了一个小时.. 就是$f_{i,j}$表示在第$i$个位置高度为$j$的时 ...

  6. [杂谈]冲NOIP一等奖。。

    唉不想多说了. 真是一段“传奇”的经历啊. 还是那句话..“是的我上次什么都没说就走了...”这次也一样. 我还是太单纯的以为我们是肯定能够参加北大的夏令营的..然而结果真是意料之外啊. 本来我以为我 ...

  7. 【最后的抒情】【离NOIP还有9个小时】

    学了NOIP 大概十一个月左右,中途的插班生.从2015年12月底开始学信息竞赛,在寒假的时候还笑着我还有九个月才考试呢,生竞就只有两个月了.没错我是从生物竞赛转过来的.记得当初写申请的时候,写的理由 ...

  8. Ubuntu 配置 no-ip

    安装Python开发依赖包 sudo apt-get install python-dev 配置PIP并安装noipy sudo apt-get install python-pip sudo pip ...

  9. NOIP模拟赛20161022

    NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...

  10. [noip科普]关于LIS和一类可以用树状数组优化的DP

    预备知识 DP(Dynamic Programming):一种以无后效性的状态转移为基础的算法,我们可以将其不严谨地先理解为递推.例如斐波那契数列的递推求法可以不严谨地认为是DP.当然DP的状态也可以 ...

随机推荐

  1. Linux下nice/renice命令小结

    1. nice命令 内核根据进程的nice值决定进程需要多少处理器时间. nice值的取值范围是是: -20到20. 一个具有-20 的 nice 值的进程有很高的优先级. 一个 nice 值为 20 ...

  2. jQuery-webcam(.NET)实现WEB摄像头监控

    jQuery-webcam是一个非常好用的摄像头监控工具,DEMO可官方下载地址http://www.xarg.org/project/jquery-webcam-plugin/ 1.下载解压后,jq ...

  3. 黄聪:wordpress在IIS8中设置默认编码(windows2012服务器)

    web.config中配置 <?xml version="1.0" encoding="UTF-8"?> <configuration> ...

  4. 黄聪:如何用Jquery或者插件解除网页禁用右键复制的限制(转)

    1.随便打开一个网址,放到收藏夹中. 2.复制下面的代码,替换原来网址的URL 选中复制以下代码 javascript:(function(){var doc=document;var bd=doc. ...

  5. Sublime Text 3关闭自动更新

    Sublime Text 3关闭自动更新 第一步:help->enter license 这有两个: -– BEGIN LICENSE -– Michael Barnes Single User ...

  6. NeHe OpenGL教程 第二十五课:变形

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  7. R-S触发器

    下面是触发器的电路,这个电路上下对称,分别都是一个或门连着一个非门,特别之处在于,它们各自的输出又分别是对方的输入. 合上R,上面的或门输入时1.0,经过上面的非门,Q=0,Q不发光.Q的结果会被反馈 ...

  8. 标准电流信号为什么是4-20MA?(网络摘录)

    一来源: 4-20mA.DC(1-5V.DC)信号制是国际电工委员会(IEC):过程控制系统(是连接仪表.变送设备.控制设备.计算机采样设备)用模拟信号标准.我国从DDZ-Ⅲ型电动仪表开始采用这一国际 ...

  9. SQL Server查询死锁并KILL

    杀掉死锁的sqlserver进程   SELECT request_session_id spid,OBJECT_NAME (resource_associated_entity_id)tableNa ...

  10. Cocoa编程中视图控制器与视图类详解

    iPhone编程规则是:一个窗口,多个视图.UIView是iPhone屏幕上很多控件的基础类.每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView ...