自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

PL博客

分享知识

  • 博客(78)
  • 收藏
  • 关注

原创 日常笔记(数学)

目录一 polya定理,Burnside引理 二 拉格朗日插值法三 线性齐次递推(需要前2×k项)三 线性基(交集)四Lucas定理(组合数) 一 polya定理,Burnside引理转自:https://blog.csdn.net/whereisherofrom/article/details/796317031.B...

2019-07-11 16:25:43 193

原创 日常笔记

目录一 树上差分:二 tarjan算法求割边三tarjan求割点四 康托展开 五 后缀数组模板:六 后缀自动机模板:七 求最大子矩阵八 异或空间,线性基九 极大团(回溯法 剪枝)十 斯坦纳树 求给定点的最小联通代价十一 FFT(多项式乘法)十二 NTT十三回文树(统计回文串的数量)十四广义后缀自动机十五 欧拉回路十...

2019-06-17 16:34:12 194

原创 Morris遍历

对于二叉树的遍历,最简单的就是使用递归的方式去实现,容易理解,也容易实现。时间和空间都是O(n)。如果是利用栈去实现,也是同样的复杂度。那么能不能降低空间复杂度呢。当然可以,就是Morris。以下是我自己的理解(建议自己造一棵二叉树,跟着代码跑一遍):在遍历过程中,我觉得最重要的就是当我们遍历完一个节点的左子树之后,能够回到当前节点,继而继续去遍历右子树。因此我们需要关心的就是如何回到当前节点。和用栈实现的遍历方式相比, morris需要遍历两遍。记当前节点为cur,当我们遍历到cur的前驱节点(p

2020-05-20 12:30:37 211

原创 50道sql练习题

题目是网上经典的50道sql练习题,答案是自己写的(仅供参考)表信息学生表(student)字段名含义类型SId学生编号varchar(10)Sname学生姓名varchar(10)Sage出生年月datetimeSsex学生性别varchar(10)课程表(course)字段名含义类型CId课程编号varchar(10)Cname课程名称nvarchar(10)TId教师编号var

2020-05-19 17:36:25 451

原创 hadoop提交有依赖的jar包出错

写了一个简单的wordCount程序,本地可以运行的。打包提交到集群上就报错Exception in thread "main" org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://hadoop1:9000/usr/hadoop/input/input.txt already exists程序...

2020-04-25 17:13:05 270

原创 虚拟机Centos6.4静态ip设置以及故障处理

一 虚拟机的网络虚拟机的通信是通过我们的主机与外面通信的,而与主机的通信则是通过虚拟网卡完成的,在安装完Vmware之后,在我们的本机上会多出两个虚拟网卡虚拟机与主机的通信就是靠这个VMnet8网卡完成的,我们可以通过右键属性,Intetnet版本协议4(Tcp/ipv4)来查看其ip,子网掩码,DNS等信息,当然也可以自行设置。此外也可以通过cmd命令ipconfig来查看相关信息...

2020-04-14 18:08:34 223

原创 Kafka-Manager第二次启动失败问题

当我们第二次启动时,报错Thisapplicationisalreadyrunning(Ordelete/var/run/play.pidfile).\color{red}{This application is already running (Or delete /var/run/play.pid file).}Thisapplicationisalreadyrunning(Ordelete/...

2020-04-14 09:06:18 1402

原创 spark 提交任务

一 提交命令及参数解释spark-sumbit参数解释–class程序运行的主类,如果有包,得加上包名–master指明任务提交到哪里运行–deploy-modedriver在哪里启动,默认是苦户端–driver-memorydriver运行的内存–name应用程序的名称–jars用逗号分隔的本地 jar 包,设置后,这些 jar...

2020-03-28 14:12:20 300

原创 如何卸载掉AVG

直接百度搜索AVG remove会有软件可以卸载它,如果发现卸载不干净,或者发现进程里还有他,或者安装路径(C:\Program Files)还有文件,那么恭喜你。尝试过在进程了里结束他的进程,直接删掉他的文件,发现都没有权限,之后我还尝试过给他赋予管理员的权限,可是被拒绝了,于是我彻底奔溃了。。。。。。最后的办法就是进入安全模式,直接删掉他的文件。一 win+R,输入msconfig...

2020-03-04 22:44:08 30632 5

原创 数据结构(树)

一 .二叉排序树定义: 左子树的值小于父节点的值,右子树的值大于父节点的值,所有节点都满足此定义。删除: 分三种情况① 删除的节点为叶子节点,那么直接删除即可。对整棵树没什么影响②删除的节点有只有左子树或者右子树,把该子树往上移就好③删除的节点既有左子树也有右子树,假设删除的节点为p,那么根据二叉树的性质(中序遍历的结果从小到大),需要找到p节点的前驱(比p小的最大节点)或者后继(...

2020-02-14 15:56:27 150

原创 Django基础

我自己的Django版本是2.1,pyhton是3.7,数据库是mysql5.6搭建一个Django web框架,知道Django中models,views,urls的作用基本就差不多完成了。先大致说一下Django的运行流程。当我们运行Django是,在没有错误的情况下,我们在浏览器中输入 http://127.0.0.1:8000/就可以访问到我们的网页了。在输入网站访问的时候,Django...

2020-01-14 12:35:28 266

原创 R语言 字符的操作

字符串操作连接字符串 - paste()函数R语言中的许多字符串使用paste()函数组合。 它可以采取任何数量的参数组合在一起。paste(..., sep = " ", collapse = NULL)…表示要组合的任意数量的自变量。sep表示参数之间的任何分隔符。 它是可选的。collapse用于消除两个字符串之间的空格。 但不是一个字符串的两个字内的空间。格式化数字和字符串...

2019-11-15 19:53:40 1921

原创 R语言 数据的读写

在R语言中可以读写的最基本的数据格式就是text,以及csv文件。用read.table()或者read.csv函数就可以,相应的写入函数是write.table(),write.csv()。对于其它的格式文件,R语言有相应的包支持,我们最经常用的xlsx格式需要导入library(xlsx)一 读数据这个比较简单,直接调用函数即可,参数就是 文件的路径,当然还有其它的一些参数,自行试一试就知...

2019-11-15 11:36:22 1421

原创 2019 ICPC 网络赛(上海)D

题目链接:D. Counting Sequences I前置技能:多重集的排列数设 S=(n1∗a1,n2∗a2.....nk∗ak)S= (n_1*a_1,n_2*a_2.....n_k*a_k)S=(n1​∗a1​,n2​∗a2​.....nk​∗ak​)是由n1个a1,n2个a2......nk个akn_1个a_1,n_2个a_2......n_k个a_kn1​个a1​,n2​个a2​...

2019-09-15 20:15:17 255

原创 区间不同数字的个数及和(牛客练习赛52 B)

题目链接:Galahad官方题解解法1将询问离线,维护一个初始为0的序列B,从a1a_1a1​​遍历到ana_nan​,对于每个aia_iai​​,记录上次出现的位置lastailast_{ai}lastai​​,遍历aia_iai​i​时,对B序列的 lastailast_{ai}lastai​​​到i区间加aia_iai​​,处理询问右端点为i的询问,输出此时blb_lbl​​的值即可...

2019-09-15 09:44:43 335

原创 线段树维护矩阵转移

题目: CF New Year and Old Subsequence题意:给定一个字符串,询问某一个区间内至少需要删除多少个字母,使得剩下的数字含有2017,但不含有2016。思路定义5个状态0:空状态,连2都没有1:只有2,没有0连在后面2: 只有20,没有1在后面3: 只有201,没有7在后面4:完整的2017状态转移对于任意两个相邻的连续的区间之间的状态的...

2019-09-11 12:41:11 401

原创 c++程序对怕

以某个题为例Description给出一个序列,包含n个数,有正数、0及负数。现取连续的一段数,问它们和的绝对值的最小、最大值分别为多少?Input第一行一个数n,表示序列长度。(1<=n<=1e5)第二行包含n个整数,a[1],a[2]…a[n]。(-1e7<=a[i]<=1e7)Output一行包含两个数 最小值、最大值。Sample Input 1...

2019-08-29 16:54:08 173

原创 CMD文件的创建&c++多文件读写

先使用cd命令进入你文件/文件夹要保存的地方CMD创建单个文件夹mkdir filenameCMD创建多个文件夹for /l %i in (1,1,20) do mkdir%filename创建单个文件cd.>name,txt创建多个文件for /l %i in (1,1,20) do cd.>%i.txt根据文件的不同直接修改后缀即可删除文件价...

2019-08-29 14:05:03 296

原创 后缀自动机(模版)

构建struct state { int len, link; map<char, int> next;};const int MAXLEN = 100000;state st[MAXLEN * 2];int sz, last;void sam_init() { st[0].len = 0; st[0].link = -1; sz++; last = 0;}...

2019-08-27 20:45:02 133

原创 2019中国大学生程序设计竞赛(CCPC) - 网络选拔赛HDU6703(权值线段树)

题目链接:array题意:  给你一个数组a[],大小为n,范围也在1~n。两个操作:(1,pos),indicating to change the value of apos to apos+10,000,000;(2,r,k),indicating to ask the minimum value which is not equal to any ai ( 1≤i≤r ) an...

2019-08-24 16:47:11 217

原创 k短路(HDU6705)

题目链接:Path这不是求k短路吗?那直接A算法。仔细一看起点不固定。那A算法是行不通了。考虑BFS搜索。这提和牛客多校的一道求第k小团的题很像(思想很像)。 Kth Minimum Clique可以先看看这道题。回到题。我们先把所有边压入一个优先队列,优先队列里记录当前到达的点以及路径,每次取出路径最小的,第一次取出就是第一小,第二次取出就是第二小,第三次取出就是第三小。。。。。然后再...

2019-08-24 11:25:06 389

转载 AC自动机(模板)

指针写法:博客来源:AC自动机算法详解#include<bits/stdc++.h>using namespace std;const int N = 1000 * 100 + 10,M=26;int head, tail;struct node{ node *fail; node *nextt[M]; int cnt; node() { fail = NUL...

2019-08-21 11:31:37 106

原创 树链剖分(模版)

模版题目树链剖分讲解模版:#include<bits/stdc++.h>using namespace std;const int N = 1000 * 100 + 10;int n, m, r,p,val[N];int son[N], dp[N], siz[N], fa[N];int head[N], to[N * 2], nextt[N * 2],cnt=1;in...

2019-08-20 21:09:41 94

原创 原根

参看原根定义对于一个模数m,如果存在一个数g,满足g1,g2.......gp−1modmg^1,g^2.......g^{p-1} mod mg1,g2.......gp−1modm两两不同,并且1&lt;g&lt;m1&lt;g&lt;m1<g<m,模得的结果也在(1,p)(1,p)(1,p),则称g是模数ppp的一个原根。模数m存在原根的...

2019-08-19 20:07:16 499

原创 Trie&可持久化Trie

Trie(字典树)#include<bits/stdc++.h>using namespace std;const int N =1000*1000+10;int n,m,size[N][26],tot=1,endpos[N*2];char s[N];void insert(char s[]){ int len=strlen(s),p=1; for(in...

2019-08-18 10:29:31 105

原创 cdq分治

一种基于时间顺序对序列操作进行操作的算法,陈丹琦大佬提出的,也称时间分治。<<算法竞赛进阶指南>>上解释得就挺不错的就是先把一系列的操作存起来,二分去操作,每次计算左区间对右区间的影响,递归边界就是L==R,即只有一个操作时没有意义。刚开始觉得挺难的,做了几道题之后觉得还好,这种思想奇妙。最开始做的cdq大部分应该都是这道题陌上花开。这题我是很久之前做的了,当时...

2019-08-15 12:25:48 332

原创 cdq(时间分治)

Explorer题意:给定n个点m条无向边,每条边有一个宽度(L,R)。现在有一个人在一号节点,这个人的宽度不知,问最后这个人 到达n号节点可以有多少种大小。通过一条边的条件是这个人的宽度大小在这条边的范围之内。(用词不准确,但大概题意就是这样TTTT。。。)。菜鸟一看见这道题,这不dfs搜索一下就ok了,菜鸟还是头脑太简单了。看了官方题解,时间分治????这是什鬼东西呢,表示不知道。后来才...

2019-08-12 20:27:36 344

原创 2019牛客暑期多校训练营(第七场)E

Find the median动态去寻找一个序列的中位数;但是此题没有要求在线,于是可以离线操作。由于L,R都比较大,需要离散化。 寻找中位数,那么数量上可定具有单调性,所以可以考虑二分去找。刚开始想用树状数组去维护的数量,然后二分的。然后写着写着就发现不对了,开了一个树状数组去记录每个区间以左端点为起点的数量大小,可是考虑一个问题,有的区间比较大,完全可能在树状数组上跨越了多个节点,相当...

2019-08-10 10:13:54 271 2

原创 2019牛客暑期多校训练营(第七场)H

Pair 数位dp数位dp还是写得太少了,开始时完全不知道怎么下手,还是看了别人的博客才算是理解了一点。题意:求满足下列条件之一的数对的个数1  x & y>C2  x^y<C1&lt;=x&lt;=A1&lt;=x&lt;=A1<=x<=A and 1&lt;=y&lt;=B1&lt;=y&...

2019-08-09 16:51:17 182

原创 Miller-Rabin 素数判定

费马小定理:ap−1≡1mod(p)a^{p-1}\equiv 1 mod (p)ap−1≡1mod(p) (p为质素)二次探测原理x2≡1mod(p)x^2\equiv 1mod(p)x2≡1mod(p) (p为质素)x=1∣∣x=p−1x=1 || x=p-1x=1∣∣x=p−1对于二次的证明x2≡1mod(p)⇒x2−1≡0mod(p)x^2\equiv ...

2019-08-09 09:20:45 179

原创 霍尔定理

霍尔定理是判断二分图是否是完美匹配的充要条件首先要求∣X∣=∣Y∣|X|=|Y|∣X∣=∣Y∣,即是左右两部分的节点个数相等其次 对于XXX的任意子集a都要满足 ∣a∣&lt;=∣b∣|a|&lt;=|b|∣a∣<=∣b∣,b是a节点所能到达的Y中的节点的并6062. 「2017 山东一轮集训 Day2」Pair主要就是因为这个题才了解的霍尔定理题目:给出一个长...

2019-08-08 11:01:30 5360

原创 Palindromic Tree

一个很厉害的算法,具体怎么实现的不是很清楚,本着不求甚解的态度,知道怎么用就好了。next[][]:类似于字典树,指向当前字符串在两段同时加上一个字符fail[] fail指针:类似于AC自动机,返回失配后与当前i结尾的最长回文串本质上不同的最长回文后缀cnt[]: 在最后统计后它可以表示形如以i为结尾的回文串中最长的那个串个数num[]: 表示以i结尾的回文串的种类数len[]: 表示...

2019-08-07 21:08:08 215

原创 2019 杭电多校 HDU - 6623

Minimal Power of Prime题意:让你把一个数质因数分解,输出所有质因数指数的最小值。这个题还是挺有意思的,解题思路也比较好玩。思路:先预处理出10000以内的素数预处理出来。对于每一个 n ,我们先处理它10000以内的质因数,那么剩下的质因数的指数就不可能超过4,单独判断即可;为什么不会超过4呢当我们选出10000以内的所有质因数之后,那么剩下的因数必然大于10000...

2019-08-07 10:34:25 197

原创 2019牛客暑期多校训练营(第五场)F

题目链接题意:给你一组数据,让你从中选取尽可能多的数,并且选出来的数两两之间的二进制表示不同的 位数要大于1。思路:反向思考,如果两个数之间只有一位不同,那我们就在这两个数之间建一条边。那么就是求一个最大独立集的问题。定理设G是有n个节点的二分图,G的最大独立集的大小等于n减去最大匹配数。但是此题不仅要求大小,还得把选出来的数输出来;于是我们可以先求出这个二分图的最小点覆...

2019-08-06 10:39:56 189

原创 codeforces 91B Queue

对与每个位置,我们需要找到它右边最后一个小于它的数,因此我们可以逆向从尾部开始查找。然后把已经扫描过的数的下标记录在一个vector中。并保持该vector单调递减。也就是说vector中最后一个元素对应的就是已经扫描过的数中的最小值的下标;这样当我们比找某个数小的最右边的位置时,可先判断与最小值的大小关系,如果小于等于最小值,那么这个数的右边就没有比它小的数了,记为‘-1’。否则,就利用二分...

2019-08-02 08:07:32 115

原创 2019 牛客第五场 B

题目地址        当时以一看见这题,n的范围这么大,脑子里全是欧拉降幂。(感觉要是有人跟我说这不是欧拉降幂,我就跟他急似的);然后就瞎搞了很久,然后。。。。。就没有然后了。比赛结束后看了一下题解出这题是因为我小时候曾被Codeforces 某个不是用2 进制倍增,而是改用10 进制倍增就会很好写的题震慑到,所以这次找了个纯用2 进制倍增有点困难的...

2019-08-01 21:33:52 192

原创 次短路

次短路:大于最短路的最小路径;最短路:求法很多,不说了最短路计数:计算最短路的数量,以dijstra算法解最短路来说,多开一个计数的数组num[N],当我们跟新某一个点时,dis[u]>dis[v]+e[u][v] (u点与v点有路),更新num[u]=num[v]; 如果dis[u]=dis[v]+e[u][v],那就单独更新数量:num[u]+=num[v];次短路算法:在...

2019-08-01 08:55:21 3000

原创 A* &&IDA*

A*:BFS+估价函数,普通的BFS是范围性的搜索,对于目标状态吗,没有明确得到方向。A*算法优点就在于估价函数,如果这个函数设计得好,那么效率会大大提升,设计得差的话,其实就和不同BFS一样,A*算法就是处理出每个状态到目标状态的代价,这个代价是估计出来的,不一定准确,但是这个代价只能<=实际代价,为什么?其实可以这样理解,BFS的时候,优先队列排序的关键字是初始状态到现在状态的代价(准...

2019-07-31 11:12:22 453

原创 权值线段树(HDU 6609)

权值线段树,顾名思义,是一数的值的大小作为下标建立数段树的,所以通常需要先离散化再建树。个人感觉有点像主席树,只是不是可持久化的而已。作用(个人观点):查询某个数的排名,有多少个数比它小,比它大,以及查询某个排名的数是多少。写法:和普通线段一样,只是这里的节点是记录数据出现的次数而已;以一个题目为例:点这里查看题目题意:给一个数列,对于每一个位置i,询问至少需要改变前面多...

2019-07-30 18:03:31 452

原创 2019牛客暑期多校训练营(第三场)F

题目链接:https://ac.nowcoder.com/acm/contest/883/F思路:枚举上下边界,以及右边界即可。那么在我们知道上下边界时,怎样快速地计算最大的矩阵呢,注意到我们枚举右边界时是 从左到右的,左边的数我们知道了,就要想办法充分利用这些信息,假设对于每一列的最大值以及最小值我们都是知道的,那么用两个单调队列分别维护最小值最大值,最小值递增,最大值递减。那么在...

2019-07-26 14:16:56 174

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除