摘要: 首先介绍一下Matrix-Tree定理是干什莫用的: Matrix-Tree定理用于图的生成树计数。复杂度为 $ O(n^3) $。 在学习Matrix-Tree定理之前,我们需要先了解离散拉普拉斯算子。 一.离散拉普拉斯算子 给定了一个图,我们先求出它的度数矩阵D和邻接矩阵A: 度数矩阵:D[x] 阅读全文
posted @ 2019-03-04 19:18 jiangminghong 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 版权声明:参考李煜东《算法竞赛进阶指南》,本文在此基础上加以改动,主要目的是帮助理解算法,我认为此书中讲的很详细,于是打算记录下来给没看过的人了解,也为以后自己复习使用。 顺便推荐一下这本书。。。 正文开始 在认识平衡树之前,我们需要先认识BST。 目录: 一.BST 1.BST的建立 2.BST的 阅读全文
posted @ 2018-11-22 11:15 jiangminghong 阅读(621) 评论(0) 推荐(0) 编辑
摘要: 参见2009年国家集训队论文,骆可强:《论程序底层优化的一些方法与技巧》 附上代码: 因为x,y都是mod意义下的,保证了x*y/mod不会爆long long。 阅读全文
posted @ 2019-03-04 20:30 jiangminghong 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作: 查询k在区间内的排名 查询区间内排名为k的值 修改某一位值上的数值 查询k在区间内的前驱(前驱定义为严格小于x,且最大的数,若不存在输出-2147483647) 查询k在区间内的后继(后继定义为严格大于x, 阅读全文
posted @ 2019-03-04 19:50 jiangminghong 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给定一个n次多项式F(x),和一个m次多项式G(x)。 请求出F(x)和G(x)的卷积。 题解: FFT模板 附上代码: 阅读全文
posted @ 2018-12-04 19:41 jiangminghong 阅读(136) 评论(0) 推荐(0) 编辑
摘要: NOIP基本模板进阶 一.Treap 支持: 二.非旋转Treap 支持普通Treap操作,区间翻转 三.权值线段树 阅读全文
posted @ 2018-12-01 16:28 jiangminghong 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 题目描述: Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地。 FJ打算在牧场上的某几格土地里种上美味的草,供他的奶牛们享用。遗憾的是,有些土地相当的贫瘠,不能用来放牧。 并且,奶牛们喜欢独占一块草地的感觉,于 阅读全文
posted @ 2018-11-07 16:03 jiangminghong 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 目录: 1.线性推逆元 2.线性筛素数 3.线性筛欧拉函数 4.质因数分解 5.gcd及exgcd 6.快速幂及快速乘 7.LCA算法(最近公共祖先) 8.树状数组 9.卢卡斯定理 10.高精度(加、减、压位乘法) 一.线性推逆元 二.线性筛素数 三.线性筛欧拉函数 四.质因数分解 五.gcd及ex 阅读全文
posted @ 2018-11-05 22:49 jiangminghong 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 题目描述: Farmer John已经决定把水灌到他的n(1<=n<=300)块农田,农田被数字1到n标记。 把一块土地进行灌水有两种方法,从其他农田饮水,或者这块土地建造水库。 建造一个水库需要花费wi(1<=wi<=100000),连接两块土地需要花费Pij(1<=pij<=100000,pij 阅读全文
posted @ 2018-11-05 14:36 jiangminghong 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 目录: 1.堆 2.扩展中国剩余定理 3.线段树 4.并查集 5.最小生成树 6.最短路 7.离散化 8.tarjan缩点 9.KMP算法 10.高斯消元法 一.堆(stl版) 1.大根堆 2.小根堆 二.扩展中国剩余定理 三.线段树 1.建树 2.单点修改(单点加同理) 3.区间加 4.区间修改 阅读全文
posted @ 2018-10-29 09:12 jiangminghong 阅读(364) 评论(0) 推荐(0) 编辑