随笔分类 - A学习资料
摘要:一.概述 RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j之间的最小/大值。这两个问题是在实际应用中经常遇到的问题,下面介绍一下解决这两种问题的比较高效
阅读全文
摘要:孪生素数: 所谓孪生素数指的是间隔为 2 的相邻素数,它们之间的距离已经近得不能再近了。 若n≥6且n-1和n+1为孪生素数,那么n一定是6的倍数。 证明: ∵ n-1和n+1是素数 ┈┈┈┈┈ ① ∴ n-1和n+1是奇数 ∴ n是偶数,即n是2的倍数 ┈┈┈┈┈ ② 假设n不是3的倍数,得: n
阅读全文
摘要:一开始入c++的时候成天跑cin,cout 直到有一天用cin,cout超时 才知道scanf比cin快的多 但是后来又听说加了ios::sync_with_stdio(false);的cin跟飞一样 那么到底哪个快呢? 咱们来做个小测试 题目选择:https://www.luogu.org/pro
阅读全文
摘要:一开始学线段树是跟zhx老师,用一个sum数组代替结构体 但是发现sum数组比较难打lazy标记,而且调试非常非常困难 所以就跟着xxy老师用struct结构体存变量 感觉这种方式虽然比sum难写一点但是比较容易理解 到现在线段树的基本操作: 1.单点修改 2.单点查询 3.区间修改(加减) 4.区
阅读全文
摘要:tarjan算法讲解。 tarjan算法讲解。 tarjan算法,一个关于 图的联通性的神奇算法。基于DFS算法,深度优先搜索一张有向图。!注意!是有向图。根据树,堆栈,打标记等种种神奇方法来完成剖析一个图的工作。而图的联通性,就是任督二脉通不通。。的问题。 了解tarjan算法之前你需要知道: 强
阅读全文
摘要:l邻接表的处理方法是这样: l图中顶点用一个一维数组存储,当然,顶点也可以用单链表来存储,不过数组可以较容易地读取顶点信息,更加方便。 l图中每个顶点Vi的所有邻接点构成一个线性表,由于邻接点的个数不确定,所以我们选择用单链表来存储。 1 #include<iostream> 2 using nam
阅读全文
摘要:•【性质1】在二叉树的第i层上最多有2i-1个结点(i>=1)。 【性质2】深度为k的二叉树至多有2k –1个结点(k>=1)。 •【特别】一棵深度为k且有2k–1个结点的二叉树称为满二叉树。如下图A为深度为4的满二叉树,这种树的特点是每层上的结点数都是最大结点数。 可以对满二叉树的结点进行连续编号
阅读全文
摘要:3143 二叉树的序遍历 3143 二叉树的序遍历 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 白银 Silver 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 白银 Silver 时间限制: 1 s 时间限制: 1 s 空间限制: 32000 KB 空间限制:
阅读全文
摘要:•【例3-1】找树根和孩子 【问题描述】 给定一棵树,输出树的根root,孩子最多的结点max以及他的孩子 【输入格式】 第一行:n(结点数<=100),m(边数<=200)。 以下m行;每行两个结点x和y, 表示y是x的孩子(x,y<=1000)。 【输出格式】 第一行:树根:root。 第二行:
阅读全文
摘要:第一类: 定义 定义 第一类Stirling数表示表示将 n 个不同元素构成m个圆排列的数目。又根据正负性分为无符号第一类Stirling数 和带符号第一类Stirling数 。有无符号Stirling数分别表现为其升阶函数和降阶函数的各项系数[类似于二项式系数[3] ],形式如下: 对于有无符号S
阅读全文
摘要:所以:1. f(n)=f2*f(n-1)+f3*f(n-2)+f(n-1)*f2f2=1f3=1 2. f(n)=(f(n-1)*(4*b-2))/n+1 f(1)=1;
阅读全文
摘要:主要利用cmd命令和c++的system命令行 更详细的介绍: http://attack.cf/?post=31
阅读全文