![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OI
文章平均质量分 77
Leo_h1104
一只蒟蒻
展开
-
Link-Cut-Tree 的基本姿势
Link-Cut-Tree呵呵原创 2016-05-29 07:49:50 · 770 阅读 · 0 评论 -
【NOIP2015】【bzoj4326】【uoj146】运输计划 ——O(n*log)算法
最大数据是n,m=300000,所以应该试着把时间压在n*log以内考虑修改一条边后,所有长度大于答案的路径都被缩短,因此二分答案设二分到的答案为k那么被删掉的边一定是所有长于k的路径的公共边之一,因此问题转化为,在O(m)时间内求出m条路径的交集中的最长边首先,可以在O(1)时间内求出两条路径的交集:对于路径s-t 和 s'-t' 分别求出s'到s-t上最近点u,t'到s-t上最原创 2016-11-08 18:13:26 · 629 阅读 · 0 评论 -
【BZOJ3994】【SDOI2015】约数个数和
O(n+T*sqrt(n))求解原创 2016-09-25 19:58:45 · 738 阅读 · 0 评论 -
矩阵快速幂优化的动态规划
为了防止写错原创 2017-04-12 20:00:12 · 2085 阅读 · 0 评论 -
模型化理解单调队列优化和斜率优化DP
抽象理解,脱离题目原创 2016-06-30 20:32:04 · 2109 阅读 · 2 评论 -
【UOJ78】二分图最大匹配
二分图匹配-增广路算法原创 2016-11-15 21:08:20 · 999 阅读 · 0 评论 -
【BZOJ2330】【SCOI2011】糖果——差分约束系统+tarjan
O(n)原创 2017-07-07 10:10:27 · 842 阅读 · 0 评论 -
【HDU3445】The Diary of Math Teacher —— 斯特林数
打一波脸,以为学完OI就不更了结果转眼更了两篇 容易注意到f(x)的给出形式是一个n次多项式,括号内的数每增加一次相当于对相邻位置的函数值进行一次差分。 我们尝试对f(x)进行一次差分,看看能不能找出一些规律 f(x+1)−f(x)=∏ni=1(x+ai+1)−∏ni=1(x+ai)f(x+1)−f(x)=∏i=1n(x+ai+1)−∏i=1n(x+ai)f(x+1)-f(x)=\prod_...原创 2018-06-21 22:02:40 · 371 阅读 · 0 评论 -
【CodeVS1021】玛丽卡 最短路+线段树
题目链接 声明:感谢fzw(kryj)的创意和热心讲解题目描述麦克找了个新女朋友,玛丽卡对他非常恼火并伺机报复。 因为她和他们不住在同一个城市,因此她开始准备她的长途旅行。 在这个国家中每两个城市之间最多只有一条路相通,并且我们知道从一个城市到另一个城市路上所需花费的时间。 麦克在车中无意中听到有一条路正在维修,并且那儿正堵车,但没听清楚到底是哪一条路。无论哪一条路正在维修,从...原创 2018-06-17 16:21:10 · 433 阅读 · 1 评论 -
KDtree(bzoj2648)
我的第一篇博客原创 2016-05-23 08:10:13 · 1104 阅读 · 1 评论 -
对CDQ分治的一些见解
一些自己的理解原创 2017-03-10 21:24:25 · 701 阅读 · 0 评论 -
FFT与多项式乘法
鉴于网上关于FFT作用的文章并不少,这里尽量少说废话,直接说如何理解和具体实现FFT计算多项式乘法和大整数乘法原创 2016-06-08 22:36:57 · 17499 阅读 · 8 评论 -
【HDU3401】Trade
单调队列优化动态规划原创 2016-06-25 14:07:29 · 568 阅读 · 0 评论 -
【BZOJ3289】 Mato的文件管理
【bzoj3289】Mato的文件管理-树状数组+莫队原创 2016-06-03 09:46:11 · 872 阅读 · 0 评论 -
后缀数组模板
刘汝佳的代码会RE!!!原创 2016-05-23 14:32:07 · 801 阅读 · 1 评论 -
【LNOI/JLOI/SHOI2016】【BZOJ4561】圆的异或并
一个悲伤的故事原创 2016-07-02 16:44:23 · 988 阅读 · 0 评论 -
约瑟夫问题汇总
Joseph问题 多种解法原创 2016-10-24 20:57:03 · 750 阅读 · 0 评论 -
【BZOJ4652】【NOI2016】循环之美
题解原创 2016-09-20 20:07:27 · 3248 阅读 · 0 评论 -
【Codeforces316D3】【CF316D3】PE Lesson
题目大意有n个小朋友手里各有1个球,其中每个人只能把手里的球和别人交换1或2次。输入每个人可交换的次数,求可能的交换方案数。题解每个人都把球给一个人,如果将u想要让v拿到自己的球看做是u到v有向边,那么可以把换球方案看做是若干个环。 其中,若一个环上有两个人或更少是体力为1的,则可以进行交换。其中有0个易证。有1个的交换方法如下,其中黑箭头表示想让谁拿自己的球,空心箭头表示一次交换 有两个的原创 2017-01-19 20:58:04 · 940 阅读 · 0 评论 -
【CF331C】【Codeforces 331C】 The Great Julya Calendar
算是从文化课解脱出来以后第一道正经的题了 竟然没有题解,果断补一个题目大意输入正整数n(0<=n<=10^18),求每次减去一个数位上的数字,最少几次可以把n减成0题解看到数据范围就知道一定要按照数位讨论,但是取法都不知道怎么按数位看?因此考虑贪心 首先这里有个有趣的结论,最优解法一定是每次减去尽可能大的数字 证明:分别讨论最后一位是1~9亦或是0,结合数学归纳法可以得f(n)>=f(n-1)原创 2017-01-17 20:32:58 · 2048 阅读 · 2 评论 -
树状数组的奇妙应用,99%的人都不知道!
提到树状数组,大多数人的印象是只能求区间的前缀和。然而,树状数组还有很多其他的用法,用来替代线段树可有效降低空间复杂度和代码长度。 贴一份前缀和代码以供参考。int c[maxn];int n;//可能的下标最大值int lowbit(int x){ return x&(-x);}void add(int p,int v)//修改单点{ while(p...原创 2018-06-20 17:38:18 · 660 阅读 · 1 评论