JAVA
- 非基本数据类型 都需要new!! 尤其是数组!!
- 提交题目时类名一定要是 Main,否则判题系统是不认识代码的。
- 用Java时只需要粘贴包里面的内容,包名是不需要的。//有包名的去掉包名
- java中字符串String是不可以修改的,要修改只能转换为字符数组.
复杂度
输入输出
- 输出是否需要换行.
- 输出最后是否能保留空格.
- long long 输入 和 输出都一定 要 %lld !!!
- 读入用scanf
- 读入字符时,要用 getchar() 吞掉 回车
- scanf(),printf()和cin,cout不要混用,输入数据量比较大的话会导致缓存区冲突。
取数据
自己写的测试数据,需要包括
- 特殊值 0 1 最大 最小
- 条件划分后的每一个区域
- 条件的边缘 两侧,如 条件(当a >= 8时) 需要测试 7 和
逻辑
-
对比每一个continue break return 查看是否混用
-
有除数时,一定要注意被除数乘1.0 !
-
memset(a,0,sizeof(a));只能赋值0或-1
-
数组名作为地址传参,无法用sizeof确定数组元素个数
-
T组数据,每次算都要数据初始化;使用vector的时候一定要记得把它clear掉。
-
大数组放到全局变量里,局部变量内存使用量不能超过64k
-
sort(first,last),last是past-the-end,就是要排序的元素的最后一个的后一个;
-
前导0是否需要消除
-
数据类型转换时,精度问题
-
是否要四舍五入
-
STL的区间都是左闭右开的,begin和end之间的区间就是:[begin, end)
-
cmp函数的参数一定要加const
-
使用inline,定义内联函数
图论
- 建边时看有没有重边