技巧&注意事项合集

杂项

  1. OI Wiki有很多实用的东西

编程环境

  1. 打开Dev-C++中工具-编译选项-代码生成/优化-代码警告-显示最多警告信息的开关,可以检查出一堆傻逼错误
  2. define O3 attribute((optimize(3))),把“O3”加到每个函数前面,如"O3 void does(int x)"

  3. 循环进不去就在里面输出一段字符试试看是不是真的没有进去
  4. Dev-C++调试的时候如果把一个不带参数的函数用鼠标选中,就会把那个函数执行一遍!

算法实现

  1. SPFA在while循环最后记得清空bz[x]!!!
  2. 正式比赛用SPFA一定要加上SLF优化,或者再加一个:把队头随机与队列中某一个交换
  3. 在splay上对任何一个不为根的节点进行操作后都要把它旋到根保证时间复杂度。
  4. 懒标记的含义应为“这个点已经更新,但儿子还未更新”
  5. 动态开点的线段树值域可能为负数,这个时候直接/2会出问题(l+1==r时mid会等于r),所以应该mid=(l+r)>>2,这样是取小的那个,就可以避免这种问题了。
  6. 两个数相乘取模时,如果那两个数本来是大于模数的,那么就会爆掉,要先模再乘
  7. 求点双的时候,记得判断根是不是割点

做题技巧

  1. 树上问题可以处理出dfs序/欧拉序等,转化为序列问题做

  2. 求区间数字种类一般用分块/莫队搞。

  3. 求A~B的数字是否在序列中连续排列(不要求顺序)一般找出A~B中最靠左的数和最靠右的数,若间隔为B-A+1则连续。

  4. 求树中选择点的顺序考虑转化为给每一条边定向。

  5. 曼哈顿距离和切比雪夫距离可以相互转化。https://www.cnblogs.com/zwfymqz/p/8253530.html 如果要求曼哈顿距离小于等于D的点的个数,那么可以转化为切比雪夫距离。求两点切比雪夫距离不超过D的点个数,就变为询问一个矩形内点的个数,扫描线解决。

  6. 一个一直感性理解,无法理性证明的容斥公式

  7. 判断能不能取到某个数,套路是取模后跑最短路。如

  8. 线段树不仅仅可以维护极值和sum,还可以维护很多其他的东西,比如JZOJ5060(维护最小生成树)或JZOJ6293(维护最短路)

比赛策略

  1. 每个程序交之前肉查三遍,一遍检查数组是否开大开小,有没有爆空间,一遍检查n与m,x与y这些有没有打反。还要检查题目要不要求模,模数是多少。
  2. 看完全部题的优先级高于一切,在前30分钟至少吧前三题都看完并初步思考。过50分钟左右就必须开始打了,不然时间不够。先把零散的暴力分拿满
  3. 不要过分相信大样例!!

技巧&注意事项合集的更多相关文章

  1. Android中的对话框AlertDialog使用技巧合集-转载

    Android中的对话框AlertDialog使用技巧合集     文章来自:http://blog.csdn.net/blue6626/article/details/6641105   今天我用自 ...

  2. 掘金 Android 文章精选合集

    掘金 Android 文章精选合集 掘金官方 关注 2017.07.10 16:42* 字数 175276 阅读 50053评论 13喜欢 669 用两张图告诉你,为什么你的 App 会卡顿? - A ...

  3. 面试必备:高频算法题终章「图文解析 + 范例代码」之 矩阵 二进制 + 位运算 + LRU 合集

    Attention 秋招接近尾声,我总结了 牛客.WanAndroid 上,有关笔试面经的帖子中出现的算法题,结合往年考题写了这一系列文章,所有文章均与 LeetCode 进行核对.测试.欢迎食用 本 ...

  4. 不容错过的UI设计素材大合集

    免费PSD素材 TETHR by InVision 这是出自InVision的8款PSD文件,其中包含了100个模板和超过500个UI控件.来自InVision和UI8的设计师一同协作完成了这套UI ...

  5. 大量Javascript/JQuery学习教程电子书合集

    [推荐分享]大量Javascript/JQuery学习教程电子书合集,送给有需要的人   不收藏是你的错^_^. 经证实,均可免费下载. 资源名称 资源大小   15天学会jQuery(完整版).pd ...

  6. JavaScript推荐资料合集(前端必看)

    这份合集覆盖了所有的JavaScript基本知识,从基本网络编程技巧,如变量.函数和循环语句,到高级一些的专题,如表单验证.DOM操作.客户端对象.脚本程序调试.学习前端的你不容错过! 资料名称 下载 ...

  7. FFmpeg示例程序合集-批量编译脚本

    此前做了一系列有关FFmpeg的示例程序,组成了<最简单的FFmpeg示例程序合集>,其中包含了如下项目:simplest ffmpeg player:                   ...

  8. 【Oracle教程资源大合集】Oracle数据库免费学习资源汇总

    Oracle的产品非常丰富,各类学习资源也五花八门,本文将介绍Oracle官方的免费教程与风哥整理的Oracle视频教程: 1.Oracle帮助中心 Oracle帮助中心也称为Oracle文档中心,这 ...

  9. 24个 CSS 高级技巧合集

    上期入口:史上最全实用网络爬虫合集! 1.使用CSS复位 CSS复位可以在不同的浏览器上保持一致的样式风格.您可以使用CSS reset 库Normalize等,也可以使用一个更简化的复位方法: ** ...

随机推荐

  1. wrtnode板

    Arduino技术交流:www.openjumper.com QQ群 ArduinoCN I  : 180646674,ArduinoCN II : 203870250 商品详情 产品介绍 : WRT ...

  2. hasvalue vs !=null

    Which is preferred: Nullable<T>.HasValue or Nullable<T> != null? The compiler replaces n ...

  3. MySQL高级学习笔记(七):MySql主从复制

    文章目录 复制的基本原理 slave会从master读取binlog来进行数据同步 三步骤+原理图 复制的基本原则 复制的最大问题 一主一从常见配置 mysql版本一致且后台以服务运行(双方能够pin ...

  4. 部署项目问题(maven打包jar不对应,导致启动时一直找不到某个类)

    项目是springboot+maven  打包用maven的插件package 下面是打包后的目录结构  project-1.0 和project-1.0.tar.gz是一样的  区别就是一个是压缩包 ...

  5. CS如何调用JS

    this.ClientScript.RegisterStartupScript(this.GetType(), "", "RunClick()", true); ...

  6. 【linux】记录一下遇到的各种问题

    1. 解决办法: pthread不是Linux系统的默认库,编译时加上-lpthread参数,以调用链接库 gcc -o 文件名.out 文件名.c -lpthread 输出的时候直接 ./文件名.o ...

  7. Permission denied

    记录在一次启动tomcat时提示:Permission denied 信息. 解释一下Permission denied的意思-没有权限 解决办法: sudo chmod -R 777 某一目录其中- ...

  8. 《代码大全2》读书笔记 Week8

    这一周博主阅读了<代码大全2>第11章至第13章,第三部分——"变量"就结束了,第四部分作者将转入语句的讨论. 第十一章作者详细阐述了变量名的有效命名规则,第十二和十三 ...

  9. react 16.3+ 新生命周期 作业

    1.有哪些⽣命周期被舍弃(3个),哪些⽣命 周期是新增(2个)? componentWillMount().componentWillReceiveProps().componentWillUpdat ...

  10. ubuntu 环境 cross compile 交叉编译 ARM Qt 集成 opencv

    Qt 的版本众多,交叉编译Qt可以下载 最新的 Qt 5.11,在 qtbase/mkspecs/devices/ 下找到你对应开发板的配置文件, 拷贝出来, 选择一版适用当前交叉编译工具链的版本,这 ...