zoukankan      html  css  js  c++  java
  • [笔记]赛前瞎整理2019

    算法&数据结构

    觉得系列

    • 数学

      卡特兰数:(C_{2n}^{n}-C_{2n}^{n+1}),出栈入栈,括号匹配

      斯特林数

      欧拉函数:(phi (x)=x*prod1-frac{1}{p_i}),其中(p)(x)的质因数埃式筛法求欧拉函数

      组合数学:

      ​ 二项式定理:(sum_{i=0}^{n}C_n^i*x^i*y^{n-i}=(x+y)^n)

      (sum_{i=k}^{n}C_i^k=C_{n+1}^{k+1})

      抽屉原理

      错排公式:(f[n]=(f[n-1]+f[n-2])*(n-1))

      平方和公式:(frac{n(n+1)(2n+1)}{6})

      立方和公式:((frac{n(n+1)}{2})^2)

      exgcd

      (EX)BSGS

      裴蜀定理

      放球问题:最关键的大概是问题的转化吧

    • 整除分块:[缩进优化]

    • 概率与期望:

      算系数

        算方案
      

      ​ 方差=平方的期望-期望的平方

    • 贪心

    • dp

      ​ 各种背包问题

    ​ 树型dp

    ​ 动态dp(注意矩乘的顺序)

    ​ 斜率优化

    ​ 壮鸭dp

    ​ 线段树优化dp

    • 线段树

      ​ 线段树优化建图

      ​ 主席树

    • 线性基

    • 高位前缀和

    • 字符串

      ​ 马拉车(注意边界)

      ​ KMP

      并不觉得会考的SAM

      并不觉得会考的AC自动机:它的fail等于它的father的fail的它儿子,记住这个就好啦

      • 二分图

        最小点覆盖=最大匹配

        最小边覆盖=最大独立集=n-最大匹配

        KM

    • 二分

      • 整体二分
    • 分治

      • cdq分治
      • 树的分治
        • 点分治
    • 博弈(SG定理,反尼姆博弈…)

      ​ tips:考虑后手对先手的模仿

      打表找规律

    • 压位


    数据结构

    • set

      st.lower_bound(x)

    • multiset

    • bitset:_Find_first(),_Find_next(x)

    • 并查集

    • ​ dsu on tree

      ​ 欧拉序——ST表求LCA

      ​ 倍增

      ​ 克鲁斯卡尔重构树

    • 链表

    • blingbling打表找规律大法又来啦

    不觉得系列

    • 高斯消元
    • 网络流
    • 自适应辛普森积分:((b-a)*frac{f(a)+f(b)+4f(frac{a+b}{2})}{6})

    小技巧

    • 正难则反
    • 零负担抽象注意题意的转化
    • (forall)(exist)与最大最小值的转化
    • 拆点
    • 从暴力想正解,从已知求未知
    • 中位数:大于的赋为1,小于赋值为-1
    • 化简题意:先删掉某些限制思考问题
    • 子树问题——dfs序
    • 行列问题——二分图
    • 小范围暴力,大范围高效算法:[缩进优化],[1115T1]
    • random_shuffle(a+1,a+n+1) 听说random_shuffle和喵喵喵更配哦
    • nth_element(a+l,a+k,a+r+1);
    • 把答案拆成不同部分的贡献

    Notice

    • 线段树之类的不知道空间可以造数据测一下

    • 推柿子的题目要敢推,至少展开一下装装样子是要的吧

    • 看清数据范围

      ​ 比如“对于100%的数据balabala”放在部分分前面

      ​ 再比如“数据的绝对值balabala”说明有负数

    • 多组数据记得清零,倍增的father数组也要清空

    • 强制在线特判答案的时候记得更新

    • 不要轻易丢掉觉得有一点点错的想法,除非能清楚地知道为什么错了

    • 想清楚了再开始码,先想尽办法把自己X掉

    • 看清题意啊

    • 注意题意的转换,先把乱七八糟的背景都去掉,这样比较容易看出方法

    • 一定一定要留足时间检查!!!!!!!!

    • int类型函数注意返回值!!!!!!!!!!!!!!!!!!!!!!!!!!

    • 输出字符串不要自己打

    明天就要比赛啦系列

    ZJ-00604 怀挺!!!

    诶呀,差点忘了——everyone RP++!!

    今天Day1系列

    啊哈哈看见xjh啦开心开心

    小面包卖相太差了,差评

    qwq翻了一下去年的整理发现怎么连说的话都差不多

  • 相关阅读:
    JAVA基础——编程练习(二)
    JAVA基础——面向对象三大特性:封装、继承、多态
    JVM内存
    50. Pow(x, n) (JAVA)
    47. Permutations II (JAVA)
    46. Permutations (JAVA)
    45. Jump Game II (JAVA)
    43. Multiply Strings (JAVA)
    42. Trapping Rain Water (JAVA)
    41. First Missing Positive (JAVA)
  • 原文地址:https://www.cnblogs.com/SCL123/p/11869544.html
Copyright © 2011-2022 走看看