技巧&注意事项合集
技巧&注意事项合集
杂项
- OI Wiki有很多实用的东西
编程环境
- 打开Dev-C++中工具-编译选项-代码生成/优化-代码警告-显示最多警告信息的开关,可以检查出一堆傻逼错误
define O3 attribute((optimize(3))),把“O3”加到每个函数前面,如"O3 void does(int x)"
- 循环进不去就在里面输出一段字符试试看是不是真的没有进去
- Dev-C++调试的时候如果把一个不带参数的函数用鼠标选中,就会把那个函数执行一遍!
算法实现
- SPFA在while循环最后记得清空bz[x]!!!
- 正式比赛用SPFA一定要加上SLF优化,或者再加一个:把队头随机与队列中某一个交换
- 在splay上对任何一个不为根的节点进行操作后都要把它旋到根保证时间复杂度。
- 懒标记的含义应为“这个点已经更新,但儿子还未更新”
- 动态开点的线段树值域可能为负数,这个时候直接/2会出问题(l+1==r时mid会等于r),所以应该mid=(l+r)>>2,这样是取小的那个,就可以避免这种问题了。
- 两个数相乘取模时,如果那两个数本来是大于模数的,那么就会爆掉,要先模再乘
- 求点双的时候,记得判断根是不是割点
做题技巧
树上问题可以处理出dfs序/欧拉序等,转化为序列问题做
求区间数字种类一般用分块/莫队搞。
求A~B的数字是否在序列中连续排列(不要求顺序)一般找出A~B中最靠左的数和最靠右的数,若间隔为B-A+1则连续。
求树中选择点的顺序考虑转化为给每一条边定向。
曼哈顿距离和切比雪夫距离可以相互转化。https://www.cnblogs.com/zwfymqz/p/8253530.html 如果要求曼哈顿距离小于等于D的点的个数,那么可以转化为切比雪夫距离。求两点切比雪夫距离不超过D的点个数,就变为询问一个矩形内点的个数,扫描线解决。

一个一直感性理解,无法理性证明的容斥公式
判断能不能取到某个数,套路是取模后跑最短路。如

线段树不仅仅可以维护极值和sum,还可以维护很多其他的东西,比如JZOJ5060(维护最小生成树)或JZOJ6293(维护最短路)
比赛策略
- 每个程序交之前肉查三遍,一遍检查数组是否开大开小,有没有爆空间,一遍检查n与m,x与y这些有没有打反。还要检查题目要不要求模,模数是多少。
- 看完全部题的优先级高于一切,在前30分钟至少吧前三题都看完并初步思考。过50分钟左右就必须开始打了,不然时间不够。先把零散的暴力分拿满
- 不要过分相信大样例!!
技巧&注意事项合集的更多相关文章
- Android中的对话框AlertDialog使用技巧合集-转载
Android中的对话框AlertDialog使用技巧合集 文章来自:http://blog.csdn.net/blue6626/article/details/6641105 今天我用自 ...
- 掘金 Android 文章精选合集
掘金 Android 文章精选合集 掘金官方 关注 2017.07.10 16:42* 字数 175276 阅读 50053评论 13喜欢 669 用两张图告诉你,为什么你的 App 会卡顿? - A ...
- 面试必备:高频算法题终章「图文解析 + 范例代码」之 矩阵 二进制 + 位运算 + LRU 合集
Attention 秋招接近尾声,我总结了 牛客.WanAndroid 上,有关笔试面经的帖子中出现的算法题,结合往年考题写了这一系列文章,所有文章均与 LeetCode 进行核对.测试.欢迎食用 本 ...
- 不容错过的UI设计素材大合集
免费PSD素材 TETHR by InVision 这是出自InVision的8款PSD文件,其中包含了100个模板和超过500个UI控件.来自InVision和UI8的设计师一同协作完成了这套UI ...
- 大量Javascript/JQuery学习教程电子书合集
[推荐分享]大量Javascript/JQuery学习教程电子书合集,送给有需要的人 不收藏是你的错^_^. 经证实,均可免费下载. 资源名称 资源大小 15天学会jQuery(完整版).pd ...
- JavaScript推荐资料合集(前端必看)
这份合集覆盖了所有的JavaScript基本知识,从基本网络编程技巧,如变量.函数和循环语句,到高级一些的专题,如表单验证.DOM操作.客户端对象.脚本程序调试.学习前端的你不容错过! 资料名称 下载 ...
- FFmpeg示例程序合集-批量编译脚本
此前做了一系列有关FFmpeg的示例程序,组成了<最简单的FFmpeg示例程序合集>,其中包含了如下项目:simplest ffmpeg player: ...
- 【Oracle教程资源大合集】Oracle数据库免费学习资源汇总
Oracle的产品非常丰富,各类学习资源也五花八门,本文将介绍Oracle官方的免费教程与风哥整理的Oracle视频教程: 1.Oracle帮助中心 Oracle帮助中心也称为Oracle文档中心,这 ...
- 24个 CSS 高级技巧合集
上期入口:史上最全实用网络爬虫合集! 1.使用CSS复位 CSS复位可以在不同的浏览器上保持一致的样式风格.您可以使用CSS reset 库Normalize等,也可以使用一个更简化的复位方法: ** ...
随机推荐
- js匿名函数测试
js匿名函数测试 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- CTF 密码学(一)
0x00 前言 为了练习python,强迫自己能用Python的题都用python解题还有各种密码 0x01 奇怪的字符串 实验吧题目:信息保密的需求和实际操作自古有之,与之相应的信息加密与解密也是历 ...
- PHP处理地址匹配出省市区
function handleAddress($address ='广东省深圳市龙华新区大浪街道同胜科技大厦'){ preg_match('/(.*?(省|自治区|北京市|天津市))/', $addr ...
- Python List列表的操作说明
Python中List的N种操作,其简单程度令人叹为观止... C:\Users\rhys>python Python 2.7.14 (v2.7.14:84471935ed, Sep 16 20 ...
- redis zset 介绍
$key = 'key'; //新增 zadd($key,分数,标识) //删除某个标识 zrem($key,标识) //查询某个标识的排名(从0开始的 所有在输出的时候要加一) zrevrank($ ...
- java中多态的要点
多态有三要素 继承.方法重写.父类引用指向子类对象 多态可以理解成两个部分:一个是编译时,一个是运行时 编译时:定义规则:运行时:具体实现这个规则. 编译时:把父类强制转换成子类不会报错:运行时:先去 ...
- 100个常用js代码(转载)
作者:小萧ovo链接:https://zhuanlan.zhihu.com/p/23076321来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. JavaScript定点 ...
- maven项目中 把依赖的jar包一起打包
1.pom.xml 配置文件: 在pom.xml配置文件中添加 <build> <plugins> <plugin> <artifactId>maven ...
- python-request模块--安装
Request是python中一个发送http请求的包, pip安装: pip install Requests (==版本号) 如果你没有安装pip那么需要先安装pip,pip是python中基本的 ...
- Go 语言变量、常量
变量 第一种,指定变量类型,声明后若不赋值,使用默认值. var v_name v_type v_name = value 第二种,根据值自行判定变量类型. var v_name = value 第三 ...