做题经验

2018-06-17 22:44:01来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

一.http://codevs.cn/problem/4906/

以后所有的数据处理全部在读入之后进行!!!!

 二.http://noi.openjudge.cn/ch0205/2727/

1.注意memset的用法,siezof()里面写的是变量名

2.有时候vis数组开成int类型会超时!,so尽量把vis数组开成bool类型。省时省空间

 

三.http://codevs.cn/problem/4768/

1.注意在模拟的时候一定要把可能会出现的情况考虑全面

2.一定要从实际出发,不要死套模板

四.http://codevs.cn/problem/1058/

1.在调试的时候一定要把整个程序的运行过程全部看完,否则会出现对了这个错了那个,对了那个这个又错了的情况!

 五.http://codevs.cn/problem/1001/

1.邻接表存的是边的数量,不是点的数量!!!!!!!!!!!!!!!!!!!!!

2.codevs有的时候抽风,当你数组开小的时候不是RE而是WA

 六.五一清北培训Day1T1

1.每次写程序之前,都要把思路整理清楚。要确保至少百分之八十都是正确代码。尽力避免写到一半才发现思路全错的情况

2.在搜索与回溯的时候,一定要特别注意状态的改变与状态的回复是否是一致的!!!!!

3,永远不要以为过了样例就能得很多分

4.自己在造数据的时候不要仅仅只考虑极端数据情况。先造几组正常数据,要不然会出现只过极端数据其他全WA的情况!!!!

 

七.http://cogs.pro/cogs/problem/problem.php?pid=2566

1.三目运算符比if快!!!!!!!!!

2.有时候一个简单的语句就有可能导致超时!!!!

3.自己写的KMP是从0开始的!!!!

 

八.ios有可能导致运行错误。

九.当多次WA 之后尝试把数组开大一点!!!!

十.当调了很长时间感觉自己程序对但是结果错误的时候,多读几遍题。。

十一.tarjan中退栈的时候注意删除vis标记!!

十二.在写带修改莫队的时候,

 

1 for(int j=cx[i-1].tm+1;j<=cx[i].tm;j++)
2             change(gg[j].pos,gg[j].val);
3 for(int j=cx[i-1].tm;j>=cx[i].tm+1;j--)
4             change(gg[j].pos,gg[j].pre);// 此处是pre,不是val!!! 

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:5709 01背包

下一篇:4906 删数问题