- 博客(24)
- 收藏
- 关注

原创 极乐净土 music 蜂鸣器 c++
#include <cstdio>#include <windows.h>#define q1 262#define q2 294#define q3 330 #define q4 349#define q5 392#define q6 440#define q7 494#define c1 523#define c2 578#define ...
2018-08-30 17:59:14
5071
4
原创 switch易错提醒
day=2;switch(day){ case 2:cout<<"cnm"<<endl; case 3:cout<<"fuck"<<endl; break;}这个输出是cnm/n fuck!!!!swich 的case 检测到匹配后会执行之后的包括default后面代码的所有语句!!下面是语法条件(break不能少)switch(expression) { case constant-expression : .
2020-12-01 09:16:31
362
原创 RMQ求LCA【ST】算法
RMQ求LCA其实非常简单的啦我们需要理解两个基本的工具:1.欧拉序列;2.线段树,二叉搜索树或者其它基本区间寻求最值的方法;所以说LCA和区间有什么关系?举个栗子:我们将欧拉序列E打出:【1,2,4,2,5,2,1,3,6,3,1】(先自己想想怎么实现)在打印序列的同时记录下每个节点第一次出现的位置R【1,2,8,3,5,9】另外别忘了给欧拉序列标深度...
2018-11-09 21:27:47
962
原创 差分约束 小结(gzoi太过分啦,把我的code删啦qwq)
首先讲一下原理(dalao写的,算法导论的不详细):假设约束系统存在解,我们知道,给定超级源点的一个偏移量d[0](即d[0]不一定为0),就能由最短路径树确定差分约束系统的一组解(树上两点间路径唯一确定)。同样的,给定最短路径树上任一个节点的值d[v],都可以求出超级源点的偏移量d[0],同样也确定了差分约束系统的一组解。对于从0到v的任意一条路径p(0,v1,v2,...,vN,v),其所...
2018-11-07 22:35:57
432
1
原创 ST(Sparse Table)算法基本思路及实现
ST算法是在倍增的思想上建立的什么是倍增?小白可以看这里:https://blog.youkuaiyun.com/jarjingx/article/details/8180560来看一下ST算法是怎么实现的(以最大值为例):首先是预处理,用一个DP解决。设a[i]是要求区间最值的数列,f[i,j]表示从第i个数起连续2^j个数中的最大值。例如数列3 2 4 5 6 8 1 2 9 7 f[...
2018-11-07 21:49:43
540
转载 【转】 Tarjan求LCA
传送门: http://www.cnblogs.com/JVxie/p/4854719.html太喜欢这篇解析啦,所以就搬到自己博客里来emmm首先是最近公共祖先的概念(什么是最近公共祖先?): 在一棵没有环的树上,每个节点肯定有其父亲节点和祖先节点,而最近公共祖先,就是两个节点在这棵树上深度最大的公共的祖先节点。 换句话说,就是两个点在这棵树上距离最近的公共祖先节点。...
2018-11-07 21:10:51
475
原创 dp训练题集
1.洛谷P1412 经营与开发你驾驶着一台带有钻头(初始能力值w)的飞船,按既定路线依次飞过n个星球。星球笼统的分为2类:资源型和维修型。(p为钻头当前能力值)1.资源型:含矿物质量a[i],若选择开采,则得到a[i]*p的金钱,之后钻头损耗k%,即p=p*(1-0.01k)2.维修型:维护费用b[i],若选择维修,则支付b[i]*p的金钱,之后钻头修复c%,即p=p*(1+0.0...
2018-11-03 16:32:20
578
原创 矩阵快速幂 斐波那契数列2
Problem C: 斐波那契数列Time Limit: 1000 ms Memory Limit: 128 MBSubmit SolutionDescription通过小L的不懈努力,他即将成为大神啦,他登上了大神专属的颁奖台。在颁奖台上,他即将领取代表着大神的无限荣誉的勋章。小L走上颁奖台后,在台上发现了一个制作精美的盒子。荣誉勋章就在盒子里面。小L发现这个盒子被上了...
2018-09-25 22:57:54
637
原创 矩阵快速幂 斐波那契数列
Problem C: 斐波那契数列Time Limit: 1000 ms Memory Limit: 128 MBSubmit SolutionDescription通过小L的不懈努力,他即将成为大神啦,他登上了大神专属的颁奖台。在颁奖台上,他即将领取代表着大神的无限荣誉的勋章。小L走上颁奖台后,在台上发现了一个制作精美的盒子。荣誉勋章就在盒子里面。小L发现这个盒子被上了...
2018-09-25 22:53:20
412
原创 矩阵快速幂 小肥猪
非常经典的一道题:Problem B: 小肥猪Time Limit: 1000 ms Memory Limit: 128 MBSubmit SolutionDescription有k头小肥猪,你每次要给他们一些饲料,重复n次。每次给的饲料用m个操作表示:操作1:(1 x)给第x头猪一份饲料; 操作2:(2 x y)把第x头猪的饲料给第y头猪(第x头猪就没有饲...
2018-09-23 20:48:47
376
原创 矩阵快速幂 算法原理
首先我们要明白什么是快速幂:举个栗子:A*A*A*A*A*A*A*A=(A*A)*(A*A)*(A*A)*(A*A)原来要乘次8的计算直接减少到4此外,我们还能发现,所以乘方都能分解成n^(2^x+2^y+2^z+.....)举个例子:7^7=7^(2^2+2^1+2^0)=7^(2^2)*7^(2^1)*7(2^0)这样下来,方法就十分明显了:把 n^x 中的x分...
2018-08-27 22:24:37
928
原创 HNOI[2008] 越狱 快速幂
求出可能的越狱状态,可以先求出所有安排状态以及不会越狱的状态。然后 -,然后后……everything is OK. 所有的安排方案,一共n个人,每个人m种选择,所以是m^n; 不会越狱,第一个人m种,第二个人不能和前一个人相同,只有m-1种,后面也一样……这样思考就可以将不与后面重复转换成后一个人不与前面的重复,答案就是m*((m-1)^(n-1)); 用快速幂,然后-。……The...
2018-08-18 22:16:56
307
原创 PIGS (网络流) gzoi
广州的同学看这里:http://www.gdgzoi.com/JudgeOnline/problem.php?cid=1045&pid=5 DescriptionMirko在一家大型养猪场工作,这家养猪场有M间可上锁的猪舍,但Mirko无法对任何一间猪舍上锁,因为他没钥匙。顾客一个接一个地到养猪场来,每个人都有一些猪舍的钥匙,他们要来买一定数量的猪。每天早晨Mirko...
2018-08-11 22:58:12
638
原创 蜥蜴 【有图包懂】 (网络流) gzoi
广州的同学看这里:http://www.gdgzoi.com/JudgeOnline/problem.php?cid=1045&pid=3 Description 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外。每行每列中相邻石柱的距离为1,蜥蜴的跳跃距离是d,即蜥蜴可以跳到平面距离不超过d的任何一个...
2018-08-10 22:41:42
522
原创 计划安排 【包懂有图】(网络流) gzoi
广州的同学看这里:http://www.gdgzoi.com/JudgeOnline/problem.php?cid=1045&pid=2 DescriptionDramatic的工厂最近生意红火!有N位客户希望工厂为他们加工产品。每位客户都提供了需要加工的产品的类型,产品到达工厂的时间r和最迟完成加工的时间d。Dramatic根据需要加工的产品类型预计了每个产品加工所需的...
2018-08-09 23:04:10
594
原创 奶牛食品 (网络流) gzoi
广州的同学看这里:http://www.gdgzoi.com/JudgeOnline/problem.php?cid=1045&pid=1 DescriptionFJ的奶牛们只吃各自喜欢的一些特定的食物和饮料,除此之外的其他食物和饮料一概不吃。某天FJ为奶牛们精心准备了一顿美妙的饭食,但在之前忘记检查奶牛们的菜单,这样显然是不能不能满足所有奶牛的要求。但是FJ又不愿意为此重...
2018-08-09 22:24:03
898
原创 草地排水 (网络流)gzoi
广州的同学看这里:http://www.gdgzoi.com/JudgeOnline/problem.php?cid=1045&pid=0 Description每次农夫John的地里下了雨,在Bessie最喜欢的三叶草地里就要形成池塘,这会让三叶草在一段时间内被水所覆盖,要过很长时间才能重新生长。因此,农夫John要建立一套排水的沟渠使得Bessie的三叶草地一直不会被水...
2018-08-09 22:01:11
567
转载 c++ spfa
转自:点击打开链接 求单源最短路的SPFA算法的全称是:Shortest Path Faster Algorithm。 SPFA算法是西南交通大学段凡丁于1994年发表的。 从名字我们就可以看出,这种算法在效率上一定有过人之处。 很多时候,给定的图存在负权边,这时类似Dijkstra等算法便没有了用武之地,而Bellman-Ford算法的复杂度又过高,S...
2018-08-09 16:30:54
2733
原创 二维动规小结
点击打开链接目前做的题目分二类一是直接推公式从底向上:类似题目有:Problem IDTitleSource Problem A数字三角形 Problem B变音量 Problem C花店橱窗 Problem D摆花 Problem E机器分配 Problem F小胖办证这些题目中有些值得注意problem B:变音量Description你将要在元旦演奏一场吉他专场。但你不希望声音平...
2018-06-13 22:36:07
876
1
原创 最小生成树-kruskal c++算法 总结
首先,什么是kruskal算法:克鲁斯卡尔算法(Kruskal's algorithm)是两个经典的最小生成树算法的较为简单理解的一个。这里面充分体现了贪心算法的精髓。大致的流程可以用一个图来表示。这里的图的选择借用了Wikipedia上的那个。非常清晰且直观。首先第一步,我们有一张图,有若干点和边第一步我们要做的事情就是将所有的边的长度排序,用排序的结果作为我们选择边的依据。这里再次体现了贪心算...
2018-04-13 23:08:59
1110
原创 寻找道路 【gzoi】
Description在有向图 G 中,每条边的长度均为 1,现给定起点和终点,请你在图中找一条从起点到 终点的路径,该路径满足以下条件:路径上的所有点的出边所指向的点都直接或间接与终点连通。在满足条件 1 的情况下使路径最短。注意:图 G 中可能存在重边和自环,题目保证终点没有出边。 请你输出符合条件的路径的长度。Input第一行有两个用一个空格隔开的整数 n 和 m,表示图有 n 个点和 m ...
2018-03-23 20:54:17
541
原创 【gzoi】队列专题杂
DescriptionN位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK,则他们的身高满足T1<...<Ti>Ti+1>…>TK(1<=i<=K)。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列...
2018-03-17 21:37:52
352
转载 最长不下降子序列详解
解决的问题:给定一个序列,求最长不下降子序列的长度(nlogn的算法没法求出具体的序列是什么) 定义:a[1..n]为原始序列,d[k]表示长度为k的不下降子序列末尾元素的最小值,len表示当前已知的最长子序列的长度。 初始化:d[1]=a[1]; len=1; (0个元素的时候特判一下) 现在我们已知最长的不下降子序列长度为1,末尾元素的最小值为a[1],那么我们让i从2到n循环,依次...
2018-03-17 15:52:50
662
原创 带括号的式子求值 五种运算符
建议先看之前的去括号部分,链接有。点击打开链接#include<iostream>#include<cstring>#include<string>using namespace std;int poww(int a,int b)//快速幂;{int ans=1,base=a; while(b!=0) {if(b&1!=0) ans*=b...
2018-03-14 22:17:36
743
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人