总计
文章平均质量分 62
000carryt
这个作者很懒,什么都没留下…
展开
-
贪心
贪心原创 2017-11-02 10:49:34 · 333 阅读 · 0 评论 -
树的LCA
LCA概念模板方法1(tarjan“向上标记法”)code1方法2(RMQ树上倍增法)codeLCA概念最近公共祖先模板题目描述 给定n个点的树(1是根),m次询问,每次询问两点的LCA;输入格式 第一行两个整数,n,m;接下来n-1行,给定正整数a,b,表示a,b间有边;接下来m行,给定整数a,b,表示询问a,b;输出格...原创 2018-05-27 20:54:01 · 774 阅读 · 0 评论 -
树的dfs
树的dfs概念树的dfs遍历就是对于一个树上每个点root,它向下的多个分支,选择一个分支一直走下去,直至走完并回溯到root再走其他分支形成的遍历。codevoid dfs(int x,int father){ v[x]=1; //邻接表枚举i的每个相邻节点 for (int i=Link[x];i;i=e[i].next) { ...原创 2018-05-27 20:06:11 · 1263 阅读 · 0 评论 -
状压DP
二进制位运算操作二进制例题题面解析代码状压例题解析代码二进制状压在很多时候都是通过二进制表示集合状态,然后状态转移。 比如3头牛ABC, 取A(001),取B(010),取C(100) 取AB(011),取BC(110),取AC(101) 取ABC(111)。位运算操作1、将a的第k位修改为1:a |= 1《《k; 2、将a的第k位修改为0:a &= ~(1《《k);原创 2018-05-09 22:01:58 · 248 阅读 · 0 评论 -
数论习题
LZY数论挑战题面解析代码细胞问题题面解析代码分数分解题面解析代码天才约数和题面解析代码调整公约数题面解析代码除法表达式题面解析代码LZY数论挑战题面任意给一个整数n, 那么整数n和a^1999+b^1999+c^1999(满足a+b+c=0,且a,b,c都是整数)的固定最大公约数是多少?(也...原创 2018-04-13 19:31:48 · 1676 阅读 · 1 评论 -
KMP
KMP背景概念原理实现用处题面1解析代码题面2解析代码KMP背景KMP作为sharpland压了很多年的算法,NOIP已经很久没有考过了。。。概念KMP算法是一种改进的字符串匹配算法,KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是实现一个next()函数,函数本身...原创 2018-04-04 20:23:27 · 275 阅读 · 0 评论 -
string操作
字符串操作strcpy(p, p1) 复制字符串strncpy(p, p1, n) 复制指定长度字符串strcat(p, p1) 附加字符串strncat(p, p1, n) 附加指定长度字符串strlen(p) 取字符串长度strcmp(p, p1) 比较字符串strcasecmp忽略大小写比较字符串strncmp(p, p1, n)转载 2017-10-03 14:10:27 · 303 阅读 · 0 评论 -
树状数组
概念性质实现操作修改单点区间和查询概念什么是树状数组??? 就是把一个普通数组转化为树的形式,那就变成了树状数组。先上张图。 树状数组d[i]存储的就是前lowbit(i)的a[i-lowbit(i)+1]的总和。性质1.i节点子节点个数为lowbit(i) 2.i节点的父节点为i+lowbit(i) 3.树的深度是(logN)...原创 2018-03-28 21:41:24 · 168 阅读 · 0 评论 -
对拍
Well goes a famous saying :’violence works wonders.Data generation assures safety!’” 暴力出奇迹,对拍保平安。今天稍微学了一下对拍。对拍在NOIP中是很重要的。 可以靠部分分程序来生成数据来与高分或AC程序对比。。。来保证后者的正确性。那么如何对拍1.部分分暴力+要对拍程序。 2.生成数据程序 3.bat原创 2018-04-15 20:19:27 · 283 阅读 · 0 评论 -
3.16(杨神)
分组背包搞树形dp多叉转二叉原理存储进行输出方案分组背包搞树形dp多叉转二叉原理左儿子,右兄弟存储 for(int i=1;i<=n;++i) { xx=read();yy=read();vv=read();//xx为yy的son。 b[xx]=s[yy]; ...原创 2018-03-16 21:05:15 · 338 阅读 · 0 评论 -
并查集
概念初始化介绍代码查找父结点介绍路径压缩代码查找是否同一集合介绍代码合并介绍代码概念并查集: 集:集合。 并:合并,将两个元素合并到一个集合中 查:查找,1.查找父结点。2.查找两个元素是否在一个集合中 也就是对集合进行合并,查找; 这个可以解决很多问题。初始化介绍并查集一般设为所有父结点先为自己(也就是自己是自己的最终祖先,也就是集合中只有一个元素)代码int原创 2017-12-28 10:21:28 · 211 阅读 · 0 评论 -
优先队列
定义定义原创 2017-12-20 19:53:07 · 179 阅读 · 0 评论 -
memset
memset使用方法及注意事项一,memset(数组名,数据,sizeof(数组名)) 是将数组内存中的所有元素设置为特定的值; 以int为例若第二参数为0,数组全部元素改为0;若第二参数大于0,数组全部元素改为正无穷(可以暂且理解成无穷);若第二参数为-1,数组全部元素改为-1;若第二参数小于-1,数组全部元素改为负无穷。二,memset(数组名,数据,字节转载 2017-08-10 21:05:01 · 837 阅读 · 0 评论 -
分治
分治模版思想王健林说:“我们首先要有一个小目标,比如挣他100000000!!!”显然,这对大部分人都是极难实现的“小目标了”。那么100000000分成两个小目标,就是挣两个50000000,先完成一个小小目标,再完成另一个,好像容易些。However,这显然对大部分人也都是一个遥不可及的小目标。但不断的分成几个小小小目标,小小小小.........(n个小)目标,那么到原创 2017-09-27 07:14:28 · 288 阅读 · 0 评论 -
scanf gets getchar cin cin.get getline 总结
版权声明:本文为博主原创文章,未经博主允许不得转载。文章转自“小僧的博客”!!!http://blog.csdn.net/cyuyanenen/article/details/51602922一、scanf scanf一般可用于读取数字、字符、字符串; 结论: (1)当 scanf 从缓冲区中读取单个字符(%c)时,若缓冲区中第一个字符是空格、tab或换行这转载 2017-10-02 19:58:15 · 482 阅读 · 0 评论 -
卡特兰数
卡特兰数轻谈卡特兰数 卡特兰数是组合数学中常用到的一个数列;下面是百度百科的定义;公式1.另类递推式: h(n)=h(n-1)*(4*n-2)/(n+1)2.递推关系的解为: h(n)=C(2n,n)/(n+1) (n=0,1,2,...)3.递推关系的另类解为: h(n)=c(2n,n)-c(2n,n-1原创 2017-10-03 13:32:16 · 436 阅读 · 0 评论 -
博弈论SG函数
Nim游戏先手局面定理公平组合游戏(ICG)条件有向图游戏SG函数mex运算SG函数SG定理Nim游戏各位大佬可能都玩过。 三堆石子,两位选手A、B,A先手,选择某堆石子中任意多个石子,然后B选。。。最后没石子可选者为败。 再将它从三堆石子推广到n堆呢。 这就是Nim博弈。先手局面先手必胜 采取最优策略可以使自己必赢。 就...原创 2018-07-30 10:42:36 · 294 阅读 · 0 评论