1.输入的数据全部接收。否则,比如多组数据,你上一组数据提前跳出,但是等下一组开始的时候,它还是会输入,那么下一组数据就错乱了。建议尽量每组数据接收在容器里。然后再处理,最好不要边接收,边处理。
2递归的时候要注意退出的条件。还有数组遍历的时候要注意别越界。
3.pat上的输入要全部接住,虽然可能提前得到答案。但是最好等它数据接收完。因为可能是多组数据。你这一组数据没有全部接收,可能就会留在下一组了。所以,建议每组数据,先储存再处理。
4.char型号的数字和int型号的数字要注意。就是对于字符串要谨慎处理,引号和双引号不要忘记。
5.在循环里面不要输出换行,因为很可能输出的东西是空的,就会差一个换行。
6.常用的语句别写错了,if和while,for。有时候写快了,很可能一下写错了。要注意检查。
7.string可以+字符数组,也可以+字符,但是不能加被整数加过的字符。因为字符和整数加过之后是整数类型,不能加。字符数组和字符不能一起加,因为字符数组其实是字符指针,字符看作整数,一起加相当于将指针后移。
8.注意括号,是下标的中括号,还是函数参数的小括号。
9.string.substr(pos,len),pos是位置,string.earse(pos)是错误的,删除单个元素的时候,里面应该是迭代器,如果是整数,应该是一个区间,这样默认为从pos位置开始,后面全部删除。
10.要输入空格的时候要注意,scanf和getline之间要getchar。getline和getline之间不需要getchar.cin和getline之间需要getchar。
11.栈没有清空操作。只有一个一个弹出。
12.先考虑极端情况,特殊情况,再考虑一般情况。
13.整数的次方自己写函数计较好,因为pow函数是用在double的,一直数据类型转换会有误差。
14.结果出现误差先在计算式子上找原因,看看有没用混了变量。
15.要注意题目的意思,不要错误理解。特别注意要求的条件啥的。
16.set里面没有重复元素。并查集中,father数组的更新有一些滞后。要注意。
17.处理数据的时候边界问题。
18.排序的时候一定要看参与排序的是什么,不能用中间量作为排序的参数。