noip前错误整理(update:HEOI前错误整理)

X_stream

2018-03-24 21:19:31

Personal

发现自己是机房刷题最少选手(update:仍然是)......所以可能总结的错误都非常基础(还有远古错误),还有一些大概全机房只有我一个会错的问题QAQ。望大家见谅...... 顺便,大家的总结真的是太神了!orz update:错误依旧是一些很水的错误……但发现个人一般大部分的错误实则就是这些小问题,对于不同的题有一些特殊错误,在此可能不全。 ------------ 1.**一定要记得加freopen,记得检查一下文件名和子文件夹是否符合要求** ------------ ## 数据类型相关 1.数组和变量类型要考虑好,注意精度和数据大小,根据具体情况开long long之类的。注意一些有除法,开根操作的运算结果可能为小数,要开double什么的,数据太大看一下是否需要高精 2.运算过程中注意不要越界,用于循环的变量(i,j,k等)也有可能会爆int,也要稍看一下(必要时注意强制转换) 3.对应的类型要注意对应输出(大概只有我曾经用%d输出long long吧) 4.函数的类型和return的类型要保持统一 ------------ ## 初始化相关 1.需要初始化的数组/结构体/变量一定要记得初始化,多组数据是要注意清空 2.远古错误:用memset赋1 3.数据大时注意inf的值要够大 4.估计只有我一个矩阵快速幂的时候忘了初始化成单位矩阵 5.乘法运算时不要把初始值赋为0 ------------ ## re 1.dp之类的题中,数组下标一定要注意不能为负数 2.倍增之类的题中数组下标不要太大越界 3.算要开多大时注意一下乘除法要算对...manacher插字符时不要只开到输入字符串的大小 4.双向边边要开2倍 5.先写完暴力想到正解后要把各种数组开到正解数据大小 ------------ ## mle 1.记得算一下空间,stl一定要注意 2.结构体的空间要记得算结构体内的东西……不要算成一倍空间 ------------ ## tle 1.对于一些搜索优化,不要反向剪枝(比如各种数独先搜空位多的块)注意一下记的是没填块的个数还是填了的(大概只有我一个记错了) 2.注意不要无限循环,看一下while和for是否一定会跳出循环,差分约束之类的注意判负环。我甚至可以写快速幂忘了在while里写次数>>1。 ------------ ## wa! 1.注意一些手残问题,比如敲反加减号,敲反大于小于号,priority_queue重载反了,合并数据结构的时候x和fa[x]写串了这样 2.sort会打乱数组顺序,注意求前缀和之类的位置在sort之前还是之后 3.判质数时记得标上1不是 3.当线段树lazy=0有意义时初始化就不要赋零了,当然把0作为修改标记本身就很奇怪。另外注意不要忘了向上更新和及时下放 4.注意各种区间的开闭 5.注意特判各种特殊数据,特殊情况 6.注意一下是否需要加abs()或fabs() 7.有的退栈时不仅要top--,还要注意清空里面的信息 8.注意看题目是否要求无解输出-1等 9.注意一下加边是单向边还是双向,相应的结构体开的大小也要注意 10.读入字符的姿势不对,就会读进一堆奇怪的东西(大家就肯定没问题啦 11.背包注意一下如果某种物品必选的转移 12.ios::sync_with_stdio()加了后就一定不要顺手敲一个scanf上去 13.变量名不要记混它的意义,注意全局变量不要在函数里随便修改 14.注意区分break,continue(有时候还有return)不要打错了 15.不要除0 16.注意随时取模 17.题意要理解对,不要忽视题目条件 18.二分边界注意一下,精度看一下 19.printf会自动四舍五入,有的题要注意一下上取证还是下取整 20.快速幂,逆元等基础内容不要求错……比如快速幂写成while(k>1)这样 21.记得删debug时中途的输出 22.如果需要反边(比如网络流)要记得把邻接表里记录边的cnt初始赋为1之类的处理一下 23.处理区间问题(如维护序列)这种记得按需求将两端边界初始化(比如赋极小值) 24.各种数据结构要记得注意加上update…… 25.我有独特的wa掉技巧!~~其实还有很多愚蠢错误不再说明~~ ------------ ## 其它注意事项 1.对拍时造数据多组数据rand出来的t记得要输到数据里,要不然会拍出奇怪的答案 2.心态不要炸,一时间没想法也没事,因为~~像我这种~~更蒻选手应该更没有想法 3.我也不知道为什么我会忘记输出答案,还以为自己又奇怪的re了之类的qwq 4.考试的时候不要执着于一道题……至少要记得先把能打的暴力分写全再继续调试……不然可能会出现没时间写的情况 5.记得把样例文件(或一些交互题需要的文件)放在同一个文件夹运行,不同的程序起名要分开。~~论为什么在THUWC考场上让监考给我调了1h交互库~~ ~~最后,祝大家noip2018AK虐场!~~ **update:祝大家HEOI2019AK虐场!**