二分答案似乎和最小生成树有着不可描述的奇怪关系。(滑稽

联赛级别的在矩形上乱搞的题无非几个思路(按出现概率排序):建图,二维前缀和,dp

涉及到求合法区间数的问题往往要用到桶、等差数列等思想,或者尝试求最靠左/靠右的合法端点,总之避免ans++;

tarjan、拓扑、DAG上dp他们三个卡在一起。

二分答案是骗分利器,也有很大可能是正解,当然使用不当会导致爆0。分析对单调性是关键。

单调栈可以求最大值控制区间,这些区间构成一棵完全二叉树,可以启发式合并。

涉及到区间和整除某个数的问题先想余数桶。

NOIP模拟13的优美序列这道题有建图跑Tarjan/线段树扫描线/预处理答案之后毒瘤分块/析合树四种做法,都挺好的。

lower_bound可以水过很多看似要用数据结构的题。

把一个数拆成p进制的时候要从高位往低位拆。

边权为1的图求最短路考虑bfs。边权为1和0的图求最短路考虑双端队列bfs。

1500的数据有可能是bitset。($O(\frac {n^3}{32})$)

二进制枚举子集

for(int j=W;j;j=(j-1)&w);

STL清空的骚操作:

set<int> s;
s.insert(...);
set<int> swp;
swap(swp,s);

数组负数下标处理:

const int N=2e5+5;
int a[N];
int *b=a+100000;
cout<<b[-233]<<endl;

随机推荐

  1. webbench(web性能压力测试工具)

    在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果 ...

  2. Radical and array

    Radical and array 时间限制: 1 Sec  内存限制: 128 MB提交: 46  解决: 27[提交][状态] 题目描述 Radical has an array , he wan ...

  3. js练习题之图片背景轮播

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  4. ibatis 的使用

    1. 文本的使用 select  ‘day’+Num from Table;//Sql select convert(varchar,'day')+Num from Table;//ibatis

  5. 实现自己的shell--MIT xv6 shell

    参考代码: #include <stdlib.h> #include <unistd.h> #include <stdio.h> #include <fcnt ...

  6. hdu 5564 Clarke and digits

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=5564 ------------------------------------------------ ...

  7. Python 进阶_模块 & 包

    目录 目录 模块的搜索路径和路径搜索 搜索路径 命名空间和变量作用域的比较 变量名的查找覆盖 导入模块 import 语句 from-import 语句 扩展的 import 语句 as 自动载入模块 ...

  8. Linux(Ubuntu)常用命令(五)—— vi/vim常用操作

    vi/vim常用命令 vim其实就是vi的升级版,vi里的所有命令vim里都可以用,一般使用来说几乎没什么差别. 注:本篇文章区分大小写! vi / vim三级模式的关系: 命令行模式 任何时候,不管 ...

  9. LeetCode:旋转数组

    最近看了一道题,自己做个过后又参考了网上的解法,为了加深对这个解法的理解和记忆于是有了这篇博客,供自己以后复习用 题目: 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 ...

  10. 垃圾循环li

    function hezhu() { // var lis= $("#aaa").find("treeview"); ////var lis= document ...