技巧&注意事项合集
技巧&注意事项合集
杂项
- 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等,也可以使用一个更简化的复位方法: ** ...
随机推荐
- 公司-ofo:ofo
ylbtech-公司-ofo:ofo ofo小黄车是一个无桩共享单车出行平台,缔造了“无桩单车共享”模式,致力于解决城市出行问题.用户只需在微信公众号或App扫一扫车上的二维码或直接输入对应车牌号,即 ...
- Python单元测试示例
这是使用单元测试框架unittest进行的单元测试,并输出测试结果. 首先定义一个类,三个方法.第一个方法是判断两个字符串是否相等,第二个方法是判断结果为真:第三个方法也是判断两个字符串相等. 然后是 ...
- Celery 'Getting Started' not able to retrieve results; always pending
参考 根据Celery的官方文档,当使用windows 10 64-bit, Python 2.7,Erlang 64-bit binary, RabbitMQ server and celery r ...
- Linux用ifconfig设置IP、掩码、网关
ifconfig eth0 ip netmask 255.255.255.0 route add default gw 网关
- 如何在android studio中cordova的混合开发
基于Android Studio 中Cordova的开发 cordova简介 Cordova的前身是PhoneGap 官网: (http://cordova.io) Cordova应是运行在客户端本地 ...
- 跨域Ajax请求时是否带Cookie的设置
1. 无关Cookie跨域Ajax请求 客户端 以 Jquery 的 ajax 为例: $.ajax({ url : 'http://remote.domain.com/corsrequest', d ...
- redis demo
方法hset(String key,String field,String value),hmset(String key, Map<String,String> hash),hgetAl ...
- Window/Linux + Vim + MingW 配置
Windows: 首先安装Vim , MinGW,假设安装目录为D:\MinGW. 配置环境变量: LIBRARY_PATH=D:\MinGW\lib C_INCLUDE_PATH=D:\MinGW\ ...
- linux 下新建文件自动加锁的解决办法
导致文件夹里面无法保存别的文件 sudo chmod 777 -R 文件或目录
- JS window对象 Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL。 语法: location.[属性|方法]
Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL. 语法: location.[属性|方法] location对象属性图示: location 对象属性: lo ...