1.当调试时发现无法正常调用函数时,检查是否发生爆栈

对于每个栈仅有4MB的空间,开int只能开大约5*10^5。

大数组一定要开全局变量

2.当long long=int*int时会爆int,一定要注意

在进行long long计算时,最好全部开成long long ,或加上1LL

3.vector.size()的类型为unsigned int

当用其做减法时一定要注意边界条件,防止差小于0溢出

4.在求特殊最值时,一定要特殊定制初始化值,不能套用平常初始值,防止初始值不够

Ex:1<<30 > 1e9

5、由于返回类型为int和bool的默认返回值是1,因此有些时候要注意在函数结束前return false.

6、注意计算几何的精度问题,要比答案多算2到3位,否则可能WA

(Codeforces 8D)

7、注意模数不能为零

当p mod q时要对q=0时特殊处理

      (Codeforces #480 A)

8、注意答案的大小写

(BZOJ 2964)

9、scanf("%c)和getchar()有相同的问题:会读入\n等缓冲区的遗留字符

尽可能的用char数组和scanf("%s")的组合

(BZOJ 2819)

10、在写Trie树时,CNT的初始化要根据根节点数目而定

如果有n棵树,则CNT要初始化为n+1

11、在线性基求XOR最大值时

如果res初始值不为0,不能对线性基中的1直接添加,而要使用MAX逐个判断

12、如果在读入long long 时使用IO优化

read()中的INT要改为LONG LONG!!!

13、注意x组成y至少要多少个这类问题的书写:

y=y/x+(y%x>0)   ||    y=(y+x-1)/x  (不要漏>0

14、有多个括号要留心每个括号的位置啊,多看几遍

while((f=dfs(S,T,INF))>0)

这里的>0一开始放到第2个括号里了,结果f每次就都是0或1了……囧,调了1h

15、像网络流这样执行过一边就会对原数组产生影响的模块,

执行过一次后想调试/再次调用时,不能再执行一遍

16、由于模板中大部分数据都是int,如果有long long时要特别注意修改原模板中的int

惨案:

void add_edge(int from,int to,ll cap)

17、如果题目中涉及连续相乘且不取模,注意是否需要高精度

18、Big Integer模板类中牢记存储顺序是从低位到高位的

重载>时要从后往前判断

19、能用int计算不用long long,在32位机下,int比long long 快几倍

20、求SG函数时,初始值最好都设为0,防止异或-1这种情况

如果使用$vis$数组也一定要第一时间更新,防止陷入死循环

21、对变量初始化的先后顺序要注意

EX:cur=0要在st[cur][1]之前初始化

22、哈希表最好用链式前向星实现

$vector.clear()$太慢了!

23、左移、右移比==优先级高,但位与、位或比==优先级低

24、树状数组$Query$中的$ret$记得初始化!!!

25、如果$dp$时一开始状态无法填满,选择 一开始特殊处理从0开始循环 !

26、如果数组下标中有运算,查看是否可能溢出,要开大数组

27、链式前向星实现的网络流算法的要点!

(1)$edge$数组的下标一定要从0开始,这样才能使得$edge[i]$与$edge[i^1]$互为反边

(2)由于上一条原则,$head$数组一定要初始化为-1,而不是-1与0皆可

28、突然发现自己以前点分治找重心都是假的……

然而复杂度被证明是正确的:传送门

不过最好在递归时$vsum=vsum-sz[x](e[i].to=f[x])$

29、$map,set$存结构体时要重载小于号

注意重载要写全(特判前面关键字相等的情况),否则前面相等时会有意外情况(不再插入)

30、OJ上交题前一定要检查是否删掉freopen!!!

31、哈希的值域一定要从1开始!!!有0明显会出错

(特别是字符串哈希)

32、注意三元运算符的优先级!!最好都加上括号!

33、不能只考虑是否爆$int$,对$1e18$的$longlong$运算时也要注意是否爆$longlong$!

34、注意多测且一边读入一边处理时要把数据读完,不能break!!!

35、线段树注意最后一层的更新,不能先$return$!

36、线段树询问时要保证询问区间和$[1,n]$有交!否则陷入死循环

Mistakes(Updating)的更多相关文章

  1. [转]50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs

    http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/ 50 Shades of Go: Traps, Gotc ...

  2. Yet Another 10 Common Mistakes Java Developers Make When Writing SQL (You Won’t BELIEVE the Last One)--reference

    (Sorry for that click-bait heading. Couldn’t resist ;-) ) We’re on a mission. To teach you SQL. But ...

  3. [Forward]Ten Caching Mistakes that Break your App

    Caching large objects, duplicate objects, caching collections, live objects, thread unsafe caching a ...

  4. CocoaPods被卡住:Updating local specs repositories

    使用CocoaPods被卡住:Updating local specs repositories 使用 pod install --verbose --no-repo-update

  5. 使用CocoaPods被卡住:Updating local specs repositories

    使用cocoapods 更新第三库,一直停留在.Updating local specs repositories 后来查发现pod install  被墙了,请大家换成pod install --v ...

  6. 【转载学习前辈的经验】-- Mistakes I made (as a developer) 我(作为一名开发者)所犯过的错误

    我 2006 年开始工作,至今已经 10 年.10 年是个里程碑,我开始回顾自己曾经犯过的错误,以及我希望从同行那里得到什么类型的忠告.一切都在快速改变,10 年了,我不能确定这些秘诀是否还有用. 不 ...

  7. 10 Biggest Business Mistakes That Every Entrepreneur Should Avoid

    原文链接:http://www.huffingtonpost.com/syed-balkhi/10-biggest-business-mista_b_7626978.html When I start ...

  8. MySQL提示:The server quit without updating PID file问题的解决办法(转载)

    MySQL提示:The server quit without updating PID file问题的解决办法 今天网站web页面提交内容到数据库,发现出错了,一直提交不了,数找了下原因,发现数据写 ...

  9. Mysql 启动错误:the server quit without updating pid

    接到任务看看mysql为啥起不来,就上服务器上看了看,确实起不来,至于之前发生了啥也不知道. 服务器Ubuntu,mysql-5.6 1.先试下mysql登陆 mysql -uroot -p 发现报错 ...

随机推荐

  1. 单调栈(G - Sliding Window POJ - 2823 )

    题目链接:https://cn.vjudge.net/contest/276251#problem/G 题目大意:给你n和m,然后问你对于(m,n)这中间的每一个数,(i-m+1,i)这个区间的最小值 ...

  2. 延迟注入工具(python)

    延迟注入工具(python) #!/usr/bin/env python # -*- coding: utf-8 -*- # 延迟注入工具 import urllib2 import time imp ...

  3. 20155303 2016-2017-2 《Java程序设计》第三周学习总结

    20155303 2016-2017-2 <Java程序设计>第三周学习总结 教材学习内容总结 第四章 学会如何查询Java API文件对于Java的学习很有帮助,可以了解到如何使用各种方 ...

  4. mvn打war包以及解压包的方法

    有时候我们需要查看打成war包之后的目录,如果是maven项目我们可以直接用maven打包. 1.maven打包: 第一种: mvn package 如果不行先 mvn clean一下 第二种:(掌握 ...

  5. 打包egg

    scrapyd-deploy -p chahao -v 1.0 --build-egg chahao.egg

  6. IIS错误:在唯一密钥属性“fileExtension”设置为“.mp4”时,无法添加类型为“mimeMap”的重复集合项

    之前的IIS配置中,.mp4类型的文件默认无法访问,所以个人在IIS7.5的mime类型中增加了.mp4的类型的支持,但问题是需要每台机器中增加这些设置,不利于团队协作,于是,只好将这些修改体现在代码 ...

  7. linux nat网络配置

    1. 2 . 3. BOOTPROTO = static ONBOOT=yes  #开启自动启用网络连接 IPADDR0=192.168.21.128  #设置IP地址 PREFIXO0=24  #设 ...

  8. 汇编看C函数调用

    http://blog.csdn.net/wishfly/article/details/5022008   简单的函数调用,通过简单的函数调用反汇编可以清楚了解如下 1.栈到底是什么,如何操纵栈的? ...

  9. 20165301 2017-2018-2《Java程序设计》课程总结

    20165301 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我期待的师生关系 预备作业2:学习基础与c语言学习心得 预备作业3: Linux安装及命 ...

  10. OSI & TCP/IP 参考模型

    OSI参考模型的结构 OSI划分七层结构的基本原则 网中各结点都具有相同的层次: 不同结点的同等层具有相同的功能: 同一结点内相邻层之间通过接口通信: 每一层可以使用下层提供的服务,并向其上层提供服务 ...