zoukankan      html  css  js  c++  java
  • 一些idea

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

    联赛级别的在矩形上乱搞的题无非几个思路(按出现概率排序):建图,二维前缀和,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;
    
  • 相关阅读:

    bzoj3052: [wc2013]糖果公园
    莫队算法心得
    bzoj1104: [POI2007]洪水pow
    bzoj1102: [POI2007]山峰和山谷Grz
    bzoj1121: [POI2008]激光发射器SZK
    bzoj1113: [Poi2008]海报PLA
    bzoj1103: [POI2007]大都市meg
    bzoj1396: 识别子串
    bzoj3756: Pty的字符串
  • 原文地址:https://www.cnblogs.com/Rorschach-XR/p/11477163.html
Copyright © 2011-2022 走看看