整理一下将来要学的东西

其实我也不知道我写的东西是什么东西,简单的列一下吧

看了没懂的

FFT(单位根是什么鬼啊。。。)

 

辅助类

Vim

Latex

Markdown

geogebra

 

数据结构/算法

单调栈,单调队列,双端队列

线段树

  zkw线段树

  二维线段树/树状数组

  动态开节点线段树

  李超线段树

  线段树合并

平衡树

  Splay

  Treap

  FHQ Treap

  SBT

  AVL

  替罪羊树

  红黑树

  斜堆

  左偏树

  随机堆

  二项堆

  斐波那契堆

  Pairing堆

可持久化

  线段树

  数组

  平衡树

分块

  分块

  块状数组

  块状链表

树上算法

  树链剖分

  K-D Tree

  四分树

  树的分治算法(点分治,边分治,*动态?树分治)

  动态树 (LCT,*树分块)

  虚树

  *prufer编码

并查集/带权并查集

字符串

  KMP 

  BM

  Sunday

  Trie树

  AC自动机

  Manacher

  后缀数组

  后缀自动机

  后缀树

图论

  割点,割边

  次短路,k短路,最短路计数

  kruskal重构树

  欧拉图

  二分图/KM/匈牙利

网络流

  最大流

  最小割

  费用流

  分数规划

动态规划

  斯坦纳树

  斜率优化

  四边形不等式优化

  前缀和优化

  1D1D优化

  插头DP

  DP套DP

  数位DP

  树形DP

莫队

  树上莫队

  在线莫队

  待修改莫队

  树上待修改莫队

模拟退火

爬山算法

随机增量法

三维偏序

CDQ分治

朱刘算法

弦图与区间图

数学

参见一本通

 

 

日常模板

 

#include<cstdio>
const int MAXN=1e6+10;
inline char nc()
{
    static char buf[MAXN],*p1=buf,*p2=buf;
    return p1==p2&&(p2=(p1=buf)+fread(buf,1,MAXN,stdin),p1==p2)?EOF:*p1++;
}
inline int read()
{
    char c=nc();int sum=0,f=1;
    while(c<'0'||c>'9'){if(c=='-') f=-1;c=nc();}
    while(c>='0'&&c<='9')sum=sum*10+c-48,c=nc();
    return sum*f;
}
int main()
{
    #ifdef WIN32
    freopen("a.in","r",stdin);
    #else
    #endif
    int a=read(),b=read();
    printf("%d",a+b);
    return 0;
}