2022-team05-0
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
[/wiki/2022-team05 返回]
= 踩坑记录 =
== '''你先别急''' ==
1. 调试信息没删除
- 最后注意观察输出有没有别的东西
2.'''文件操作'''没开
- 注意看题面是否有文件输入输出
3.构造题不check就交
-(如果check好写的话还是写一下,边界数据也测试一下。)
== 边界极限 ==
1.一些爆int/longlong的大动作
- 注意数据范围,什么乘法啊累加啊,注意极限数据
2.初始化/边界条件
- 例如第二类斯特林数的初始值
3.'''数组有没有开够'''
- (尤其在多个数组,多个定义const int N=,M=,LOG=,的情况下,要检查每个数组是否都开够了/''' 每个数组到底是在记什么''' 以及它的范围)
== 常识 ==
1. 0没有逆元
2. int 是取整 不是四舍五入
3.判断是否会有精度问题 eps卡精度
* 时限允许 long double
4. 取小于x的最大的数
//???it = s.lower_bound(x), it--;(注意it = s.begin()?)
//特别的,x是整数 it = s.lower_bound(x - 1);
5. 字符串比较时遇到类似b与baa比较的情况时baa<b(待定) string类型用>比较没有问题,但char[]用>比较的话会有锅(baa<b,实际上应该是baa>b)这个要用strcmp或者手写比较。
6. 上取整 (a + b - 1) / b
== 智熄操作 ==
1.变量写反
* 手滑、没看清 1.nm打反(这是在干什么?)2.多个数组变量打反(搞什么)
2. 运算符优先级
* cur + (n >> i) & 1 ????????
* cur + ((n >> i) & 1)
3.npc,重读
* 一些会搞错的单词/句子意思:
[/wiki/2022-team05 返回]
踩坑记录
你先别急
1. 调试信息没删除
- 最后注意观察输出有没有别的东西
2.文件操作没开
- 注意看题面是否有文件输入输出
3.构造题不check就交
-(如果check好写的话还是写一下,边界数据也测试一下。)
边界极限
1.一些爆int/longlong的大动作
- 注意数据范围,什么乘法啊累加啊,注意极限数据
2.初始化/边界条件
- 例如第二类斯特林数的初始值
3.数组有没有开够
- (尤其在多个数组,多个定义const int N=,M=,LOG=,的情况下,要检查每个数组是否都开够了/ 每个数组到底是在记什么 以及它的范围)
常识
1. 0没有逆元
2. int 是取整 不是四舍五入
3.判断是否会有精度问题 eps卡精度
- 时限允许 long double
4. 取小于x的最大的数
//???it = s.lower_bound(x), it--;(注意it = s.begin()?)
//特别的,x是整数 it = s.lower_bound(x - 1);
5. 字符串比较时遇到类似b与baa比较的情况时baa比较没有问题,但char[]用>比较的话会有锅(baab)这个要用strcmp或者手写比较。
6. 上取整 (a + b - 1) / b
智熄操作
1.变量写反
- 手滑、没看清 1.nm打反(这是在干什么?)2.多个数组变量打反(搞什么)
2. 运算符优先级
- cur + (n >> i) & 1 ????????
- cur + ((n >> i) & 1)
3.npc,重读
- 一些会搞错的单词/句子意思: