读题

  • 不要把 \(\sum a \oplus b\) 看成异或和。
  • 注意读完整,有可能对原有符号有新的约定,不要想当然。
  • 注意模数的 0 数清楚。

卡常&时间

  • 打题之前一般先搞个自己的缺省源。快读 x=0,w=1 的初始化不要漏掉。 survive
  • 取模多的注意常数。 Holy Sequence

初始化

  • 初始化如果放到init里面,main要记得调用
  • 初始化不要乱移动位子,人家n还没读进来你循环个毛线 UVA11019 Matrix Matcher
  • 清空的时候想清楚要清空什么,哪些要清。如果对复杂度有影响记得记录改变过的位置。
  • 离散化的时候是 m=unique( tmp+1,tmp+1+2*n )-tmp-1; l[i]=lower_bound( tmp+1,tmp+1+m,l[i] )-tmp; ,不要在前面不 -tmp-1 或者在后面多减一。

Input&Output

  • 用了 ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);之后就和scanf printf无缘了……切记
  • while ( scanf( "%d",&n)==1 && n )==1 不要删掉。uva1519
  • 死循环之前的输出,如果不加换行是没有输出的;别问为啥,问就是缓存。(换行作用相当于清缓存,如果你一直存着后面又恰好死循环当然会积压着没有输出)
  • add(read(),read(),read()) 这个 xyx 说是 UB,先后顺序有问题 ARC108 C

优先级

  • 如果是 define 的话最好加括号(因为优先级)。比如 #define lowbit(x) (x)&(-x)

数据范围&空间&精度

  • 不开 long long 见祖宗。不开 ull 见祖宗。开了不特判见祖宗。——CSP2020
  • 如果要离散化原数组和修改操作,范围要开够。
  • 异或、或出来的东西要开两倍
  • 如果除初始边以外要加边,开数组时要注意
  • 开大数组要记得算空间。方阵
  • 你永远不知道C++什么时候会溢出。所以输出之前最好 (ans+mod)%mod ,保险起见。
  • 看范围的时候要注意负数什么的,DP的时候要不要和自己取 max 想清楚。 Choosing Balls
  • 防止溢出取模一定要勤快 但是什么异或和按位与之类的东西别给我瞎jb乱取模

边界问题

  • for ( int i=21; i; i-- )for ( int i=21; i>=0; i-- ) 竟然是不等价的呢。

重载&排序

  • 重载比较运算符一定tm要记得 return !!!!!!!! 死亡案例·今日降智如下↓

  • STL中,priority_queue 默认是大根堆,set 是小根堆,sort 默认升序。自行重载请重载小于号。

算法

最短路

  • Dijkstra 用超级原点时不能加双向边,否则边权为0会T。普通快乐
  • 搞超级源汇的时候要注意编号一定要设够。

平衡树

  • Splay的next查询操作不能返回val,要返回节点编号,否则kth里调用会错

线段树

  • 不要像个zz一样建完线段树不 pushup

模拟退火

  • SA有多组测试数据的时候不能用CLOCK(后果可想而知)

并查集

  • 合并是 fa[fu]=fv ,不要写错。

排列组合

  • 预处理的时候记得初始化 fac[0]=inv[0]=inv[1]=1

二分

  • 作为一个 zz,REH你记住了,以后只能写 l,r,ans,l<=r版本,不要拿着你的假模板到处 TLE .

做题注意点&其他

  • 有些比较特殊的情况最好一开始就处理好,或者写下来,不然写到后面容易忘记。
  • 前后要统一,不要出现后面改了前面没改的情况。改代码一定要谨慎。
  • 文件头要加好。
  • 不能在有返回值的函数里面不 return ,可能会产生 RE 等奇怪错误
  • 考虑要完整。
  • 有类似的题目做过固然是好的,但是要注意比较数据范围和特殊情况,不要被带偏。有可能一点关系都没有,还想复杂了。

【自用】Notice的更多相关文章

  1. 如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源

    1.前言 关于微信内部正在使用的网络层封装库Mars开源的消息,1个多月前就已满天飞(参见<微信Mars:微信内部正在使用的网络层封装库,即将开源>),不过微信团队没有失约,微信Mars ...

  2. idea快捷键(自用)

    idea快捷键(自用) 1.比如输入eclipse下面的main,sysout等,在idea里面同样可以实现,如下: sysout(sout 按tab),main(psvm按tab),具体可按照ctr ...

  3. linux 下 PHP Notice: session_start(): ps_files_cleanup_dir 报错 问题剖析

    如果在ubuntu/Debian下, 采用apt安装的PHP, 那么在使用Session的时候, 就可能会有小概率遇到这个提示. 代码如下: PHP Notice: session_start(): ...

  4. Postgresql存储过程调试:PostgreSQL 之 Function NOTICE

    转载自http://zhenghaoju700.blog.163.com/blog/static/13585951820116782843994/ 先安装一个PostgreSQL(见补充知识) 比较O ...

  5. [转]PHP如何关闭notice级别的错误提示

    1.在php.ini文件中改动error_reporting改为: error_reporting=E_ALL & ~E_NOTICE 2.如果你不能操作php.ini文件,你可以使用如下方法 ...

  6. 自用debug单元

    将之前的内存查看单元小幅修改,加上文件操作和计时,组成了一个自用debug单元,使用方法如示例. 此单元便捷之处在于直接将#define DEBUG注释掉而无需改动源码,即可取消debug模式. #d ...

  7. Notice: Only variable references should be returned by reference(PHP版本兼容性问题)

    摘自:http://sushener.spaces.live.com/blog/cns!BB54050A5CFAFCDD!435.entry PHP5一个很让人恼火的一点就是BC(向后兼容)不是很理想 ...

  8. php提示 Notice: Use of undefined constant name - assumed

    我们知道php在数组中写变量有二几种方法,我们出现这种提示就是你写成了[name]这种所以会有Notice: Use of undefined constant name - assumed name ...

  9. PHP如何关闭notice级别的错误提示

    1.在php.ini文件中改动error_reporting改为:error_reporting=E_ALL & ~E_NOTICE2.如果你不能操作php.ini文件,你可以使用如下方法在你 ...

随机推荐

  1. 消失的两个数字(1-N缺两个数)

    给定一个数组,包含从 1 到 N 所有的整数,但其中缺了两个数字.你能在 O(N) 时间内只用 O(1) 的空间找到它们吗? 以任意顺序返回这两个数字均可. 示例 1: 输入: [1]输出: [2,3 ...

  2. Android状态栏与布局重叠解决方案

    问题起因: 同组的同事将项目全局设置成了沉浸式,对于我这个半路过来开发的人 可真是头疼呵~ 没办法,那就我自己添加一个头吧.也可以在布局中取消沉浸式,不过我这个是在fragment中,为了不修改之前的 ...

  3. Angular变更检测策略报错

    报错信息: ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was ...

  4. 测试_QTP使用实例

    1. QTP简介 1.1QTP功能与特点 QTP是QuickTest Professional的简称,是一种自动化软件测试工具.在软件的测试过程中,QTP主要来用来通过已有的测试脚本执行重复的手动测试 ...

  5. Redis实现分布式缓存

    Redis 分布式缓存实现(一) 1. 什么是缓存(Cache) 定义:就是计算机内存中的一段数据: 2. 内存中数据特点 a. 读写快    b. 断电立即丢失 3. 缓存解决了什么问题? a. 提 ...

  6. Apache Shiro 反序列化漏洞复现(CVE-2016-4437)

    漏洞描述 Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.只要rememberMe的AES加密密钥泄露,无论shiro是什么版本都会导致反序列化漏洞. 漏洞原理 A ...

  7. webbug3.0菜鸟笔记1

    渗透学习笔记--基础篇--sql注入(字符型)http://bbs.51cto.com/viewthread.php?tid=1148930 渗透学习笔记--基础篇--sql注入(数字型)http:/ ...

  8. ElasticSearch 分词器,了解一下

    这篇文章主要来介绍下什么是 Analysis ,什么是分词器,以及 ElasticSearch 自带的分词器是怎么工作的,最后会介绍下中文分词是怎么做的. 首先来说下什么是 Analysis: 什么是 ...

  9. leetcode 493

    //利用归并排序来完成,归并排序可参考前面代码,归并排序可用来完成这类逆序对之类的问题,采用分治的思想,对于归并排序的代码不需要多改动,只需要在归并之前进行一次寻找操作,找出count的数量 clas ...

  10. 冲刺随笔——Day_Three

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 团队作业第五次--Alpha冲刺 这个作业的目标 团队进行Alpha冲刺 作业正文 正文 其他参考文献 无 ...