每日一个挂分小技巧
各位还有什么小技巧可以在下面评论一下(。・∀・)ノ゙
题意理解错了挂分。
多读几遍题。
freopen注释没删。
提交前做好检查!
写错变量名。
只能自己查。
除法取模没求逆元
一般样例能过,要小心。
记住。
数组、答案没清空。
一定一定要记住,多测数据要清空答案和数组!!!NOIP2022永远的痛!。
没调用函数。
自己多造几组数据测试一下。
快读写错了。
如果输入内容不多,保险起见用scanf
。
在考试中加了
ios::sync_with_stdio(false); cin.tie(0), cout.tie(0);
导致没了输出痛失 50 分。
以后考试不用这个东西。
没写快读被卡输入。
写快读。
用大括号对数组进行初始化导致 CE,但是本地测试可以通过。 (感谢 白昼之 的添加!)
提交时多摁了键盘导致 CE,如 (感谢 lyS1ngZr1 的添加! )
提交前在测试一遍,检查无误后关闭代码页面,直接交。
#include<bits/stdc++.h>
int main()
{
}x
提交时选错语言。(感谢 Aisaka_Taiga 的添加!)
提交前请做好检查!
set
中访问已删除的指针导致 RE。
将指针指向的元素存到变量里,插入时直接插入变量,尽量不插入指针。
STL 的
emplace
与pair
构造函数出锅导致 CE
pair
套pair
尽量就不要使用emplace
函数。
单向边建成双向边导致 MLE 或 RE
看清题面!
取模时,
(i - y + n) % n
忘记了 \(y\) 可能远大于 \(n\)。
改成((i - y) % n + n) % n
即可。
输入字符串放在了取字符串的长度操作后面。
自己造几组简单的数据,第一组应该就会发现问题。
AC 自动机忘记插入字符串。
emmmm(我对我的错误很无语)
输出答案的大小写写错了
YES
与Yes
看题看题看题!!!
void add(int u,int v,int w) {
e[++cnt].next=head[u];
e[cnt].to=w;
e[cnt].w=w;
head[u]=cnt;
}
建边错误,感谢 int-Hello-world 的添加。
结构体重载运算符大括号中定义的变量不会初始化成 \(0\)。
请添加初始化函数。
变量名混淆了
不要想当然地用你一般最常用的变量名,保不准哪一天就重了
除数或者模数是零导致 RE
注意判断
用错迭代器导致 CE
拿不准就用auto
multiset
的erase
函数,如果是s.erase(s.find(x))
,则是删除 \(x\) 元素其中的一个,如果是s.erase(x)
,则是将 \(x\) 全部删除。
以后注意!
斜率优化二分查找时返回的是下标而不是栈里的元素。
以后注意!
求组合数时要特判 \(n < m\) 的情况!!!