很喜欢ZROJ群友的一句话:
之前用洛谷的剪贴板记录的警钟,现在把这个搬到这顺便整理一下。
不要觉得AC的点很多了,你代码的错就很小(细节),说不定是数据点太水,自己代码错的离谱(
不要下意识的认为取模只是用来不写高精度的,有的时候模数也有很大的用处。
表头也是表格的一部分。
STL 中 .size()
这个成员函数的类型是 unsigned
,因此请谨慎做 -1 操作,例如我们写了 for(int i=0;i<vct.size();i++)
成功 RE。
离散化,如果答案输出的是被离散化的值,切记要把他们转换回原来的值,不然你会100->0。
+=
写成 =+
,==
写成 =
。
计算出的值都对,但是最后忘记无解时输出-1
输入有可能有负数,dp忘记memset(dp,-0x3f)了
输入错误,应该是 for(...)cin>>a[i]>>b[i]>>c[i];
,写成了 for(...)cin>>a[i];for(...)cin>>b[i];for(...)cin>>c[i]
不看数据范围,数组开的太小了。第二次看了数据范围还把数组开小了,警钟敲烂!
有的时候为了破环成链,dp等数组的下标需要多开一倍才行,否则对拍也调不出来。
眼瞎没看见句号+眼瞎数组开小+没把调试信息注释掉,痛失240分啊啊啊。
比赛一定要看大样例,警钟长鸣。
将 I
看成 L
,然后就全WA,警钟敲烂!(所以题目给的字符串都去复制,别自己敲)
写了两个 dfs 的函数,第一个叫 dfs,第二个叫 dfs2,然后 dfs2 调用成 dfs 了!!!!(问:此处的感叹号表达了作者怎样的心情)
目问的是最多删掉几条路,给写成了最少留下几条路
多组数据,第一次是忘记初始化,第二次是没全部初始化。直接0分,警钟敲烂啊啊啊
删掉一层循环,然后break忘记改成continue
遍历图的时候,遍历的起点 𝑠s 忘记记录是走过的。(𝑏𝑠 忘记赋值为 true)
拓补排序时候入度搞错了:𝑢 点不能给别的点贡献“值”时就走不到别的点了。具体
多打了个加号,100–>0。
函数参数传的是char类型,但是参数定义的是int类型
模版题,输出格式错了,空格写成endl,100–>30。赛时直接崩了艹
题目没说a.size()=b.size()。不要想当然
ABC346 不开longlong白吃4个罚时
在做区间dp时,如果枚举len,有的时候可以枚举长度等于1的区间,但有时候枚举长度等于1或者更长的区间时没有意义的。不要不管怎么样都len=1~n.
快速幂刚开始记得把a取模不然a*a会爆int
对于有关一个点的权值(u)的时候,如果我们用的是“输入(x,y,u),给(x,y)这个点上的权值增加u”这种输入方式,记得记录一个点的权值时应当在原有的基础上加上u,而不是直接把他赋值成u,具体。
循环内找到一个解后忘记break,导致一个物品被重复利用多次。
如果set(或multiset)存的元素是一个结构体(Node)时,需要用operator<重定义这个符号,但是这个函数中需要比较Node中所有的元素。例如有两个值a和b,但是如果只比较(Node)x.a和a的值但是整个函数内没用用到b(即比较与b无关),那么set会将两个a相同的结构体当成同一个结构体处理,例如se.insert({2,0});se.insert({2,1});,那么此时se.size()==1,se中的最后一个元素的b==0;
当用到能排序的STL(如优先队列,set等)时,在结构体(Node)内重定义小于号(operator<)的函数内保险起见不要使用外部的任何变量,否则当我们修改外部的变量时,整个STL并不会重新排序,如果你是按照这个变量来给整个STL排序的那么修改后整个STL的顺序就乱了!所以如果你使用了外部变量作为关键字,请在修改前将这个变量对应的元素先pop(erase,pop_back等)出来,然后修改完后再push(insert,push_back等)回去!因为这一个点导致痛失70分啊!直接从第3名掉到10名去了!!!!
dfs统计答案,因为某些原因,一些点会被重复的遍历道,但是统计答案的时候没有判重!!!赛时随便想了想感觉没有重复的然后就不管了。三思而后行啊。这回更痛,挂了75分,从第4掉到第12!
在C++中,运算“不具有交换律”,例如,你可以(string+char),但是不能(char+string)。
n=1e6输入不用scanf
二分模版,l=mi+1
写成 l++
,幸运的是这玩意儿不会WA,TLE 100–>60。
线段树MLE,数组忘开四倍。
没考虑到除数/模数是 0 的情况(有时是RE有时是TLE)
我打ABC357,D取位数时开了log10,交了11次还没过,赛后直接WA哭(所以能不用double类型的函数就尽量别用)
应该是能不用STL就不用STL(
警钟:VectorTLE的代码用forward_list就能够通过评测机波动ac
线段树(2e5+1)乘4写成 2e5乘 4痛失550
去年s组第二题mle没分160->135