自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 算法笔记——图论

算法笔记——图论最短路生成树差分约束拓扑排序Tarjan算法及其应用2-sat二分图网络流还有一个博客地址在这里:算法笔记——图论最短路Floyed求任意两点间的最短路,最简单的三段循环,复杂度为O(n3)O(n^3)O(n3)。注意先枚举中间节点。代码:for(int k=1;k<=n;++k)for(int i=1;i<=n;++i)for(int j=1;j&...

2019-09-12 21:40:19 512

原创 算法笔记——数据结构

算法笔记——数据结构栈队列堆ST表树状数组线段树树链剖分平衡树LCT树套树并查集线段树分治CDQ分治整体二分点分治分块莫队栈栈的定义:栈是一种先进先出的数据结构。建立如下:#include<stack>stack<int>stk;同时也可以用数组模拟栈。栈的操作1.进栈:stk.push(x);2.出栈(弹出栈顶元素):stk.pop();...

2019-08-19 17:45:44 265

原创 算法笔记——数学相关

算法笔记——数学相关高精度乘法逆元排列组合二项式定理质数的判定和应用约数拓展欧几里得矩阵相关快速乘和快速幂欧拉函数欧拉定理及费马小定理拓展欧拉定理中国剩余定理拓展中国剩余定理卢卡斯定理拓展卢卡斯定理狄利克雷卷积莫比乌斯函数莫比乌斯反演大步小步算法(BSGS)拓展大步小步算法杜教筛快速傅里叶变换(fft)快速数论变换(ntt)*斯特林数相关算法高精度核心思想:字符串模拟数组,实现大整数(大于...

2019-08-01 16:47:55 384 2

原创 ICPC2020澳门补题

就是利用第五条性质,如果先走轻儿子,走轻儿子前保存父节点的状态,那么由于最后走重儿子,因此走重儿子时就不需要保存父节点的状态了。首先,观察题目的操作,会发现若把加入一个数当做新增一个子节点,删除一个数当做跳到其父节点,整个操作序列会形成一棵树。考虑优化空间复杂度,关键是要减少存父节点状态的次数。表示从该节点走到根节点的权值异或和。3.剖分时重链优先遍历,且重链内的dfs序是有序的。4.向下经过一条轻边时,所在子树的大小至少会除以。问每次操作后拿走一些数,使得剩下的数的异或和为。的空间,可以通过本题。

2023-09-22 10:24:02 121

原创 二次剩余学习笔记

若∃x\exists x∃x,使得x2≡nmodpx2≡nmodp,则称nnn为二次剩余,否则为二次非剩余。

2023-08-31 17:33:41 132

原创 2023广东省大学生程序设计竞赛 比赛总结

2023广东省大学生程序设计竞赛题解总结

2023-07-15 11:12:27 1398 1

原创 2022-2023 Winter Petrozavodsk Camp, Day 4: KAIST+KOI Contest 比赛总结

UESTC暑假集训7月12日

2023-07-14 12:20:21 691

原创 kruskal重构树

kruskal重构树建立在kruskal最小生成树算法上,假设在做kruskal最小生成树时将要加边xyz(x,y,z)xyz,即连接结点xxx与结点yyy,边权为zzz,则建立一个新的点,分别连向xxx和yyy,点权为zzz,同时将该点设置为xxx与yyy的代表结点(很熟悉对不对?其实就是并查集!以此类推,直至做出最小生成树。

2023-04-13 00:01:05 248

原创 cf补题记录

对于每个起点,先求出是否可以不经过任何操作就可以直接到终点且合法。,条件是第二个点合法且第一个点对应的数正好就是第二个点对应的步数,同样可以使用动态规划预处理出来。因此可以一边在倒推的时候一边处理到该节点往后最多可以跳多少步。的层的任意两个结点的答案预处理出来,处理询问时,遇到结点总数小于等于。,由于可以新增一个数,所以一定可以满足题意。若第二个点合法,则可以修改第一个点的权值,答案为。的位置,因此也可以使用非动态规划的方法解决。的层,直接返回该层答案。,那么一定存在某些层数,该层的结点数小于。

2023-03-21 11:34:39 159 1

原创 CSP退役记

CSP退役记不知不觉考完CSP已经要五天了,我的这篇鸽了五天的退役记终于开始动笔了!考试经历Day0:上午考完CSP前的最后一套3道计数题,只有100分,在线自闭,学长说好的最后一天是信心赛呢?不过大众分数都是100分,我也不是特别难受了。后来hfu说今年猜可能会考计数dp的题,于是让我们练了这套题。后来好像真的考到了计数题,但是我还是不会做QAQ。下午,三点半就来到校门,四点钟出发。堵...

2019-11-21 12:28:33 322

原创 2019.11.1 noip模拟赛

T1 Set【题目描述】你手上有 N 个非负整数, 你需要在这些数中找出一个非空子集, 使得它的元素之和能被N 整除. 如果有多组合法方案, 输出任意一组即可.注意: 请使用高效的输入输出方式避免输入输出耗时过大.【输入格式】第一行一个整数 N, 代表数字个数.接下来一行 N 个数, 代表你手上的数.【输出格式】如果无解, 输出-1.否则, 第一行输出一个整数 M, 代表你选择的...

2019-11-01 18:59:10 238

原创 三角形——推公式推到手抽筋的等边三角形

三角形——推公式推到手抽筋的等边三角形解析不难想到,三角形三个顶点的排列情况应该有以下三种:1.三点共线,显然无法组成三角形;2.两点在同一条边上:3.三点都在不同的边上:蓝色部分为我们选出来的三角形,绿色部分是剩余的三角形。解法1容易想出来的一种暴力的方法是,针对第一种三角形和第二种三角形分别处理。为了方便,我们先建立一个特殊的坐标系:对于两点共边的三角形,枚举三个...

2019-10-11 22:07:36 416

原创 线段树优化建边

浅谈线段树优化建边引入思想流程建一颗线段树连边处理完整代码总结引入例题:车站分级这道题乍一看就能想到等级低的向等级高的连边,即两停靠站之间的站点向两车站连边,最后跑一遍拓扑排序找出最大值即为答案。以题目样例为例,假设火车经过站点如下,其中蓝色代表停靠,红色代表不停靠:也就是说,2的等级一定比1、3、5和6低,4的等级一定比1、3、5和6低,建边如下:拓扑排序出来就是两层,答案为2....

2019-10-10 09:11:05 322

原创 从玉蟾宫到悬线法

从玉蟾宫到悬线法例题方法例题传送门题目大意即求01矩阵中最大的全1矩阵。方法暴力枚举枚举左上角的端点和右下角的端点,前缀和判断是否全是1,。复杂度O(m2n2)O(m^2n^2)O(m2n2)二分答案枚举矩形的长,二分枚举矩形的宽,判断矩形中是否有符合条件的子矩阵。复杂度O(m2nlog⁡n)O(m^2n\log n)O(m2nlogn)悬线法正解方法。设蓝色是1,...

2019-10-08 21:57:06 113

原创 2019.10.5 noip模拟赛

T1 Reverse【题目描述】小G有一个长度为n的01串T,其中只有TST_STS​ = 1,其余位置都是0。现在小G可以进行若干 次以下操作:• 选择一个长度为K的连续子串(K是给定的常数),翻转这个子串。对于每个i,i∈[1,n]i, i ∈ [1, n]i,i∈[1,n],小G想知道 少要进行多少次操作使得Ti=1T_i = 1Ti​=1.特别的,有m个“禁 止位置”,你 要保...

2019-10-06 21:54:28 345

原创 2019.10.4 noip模拟赛

T1 三角【题目描述】ZGY 有一个三角,就像下面这样(每一个点都有一个权值)第 1 层有 1 个,第 2 层有 2 个,第 i 层有 i 个。这个三角一共有 n 层,ZGY 每次可以从第 i 层的第 j 个走到第 i + 1 层的第 j 个或是第 j + 1 个,直到走到第 n 层。从第 1 层走到第 n 层的一种方案成为一条路径,路径的权值为路径 上点权值之和。现在 ZGY 想知道...

2019-10-04 21:46:54 333

原创 2019.10.3 noip模拟赛

T1 天空龙巨水,不讲。T3 太阳神【问题描述】太阳神拉很喜欢最小公倍数,有一天他想到了一个关于最小公倍 数的题目。求满足如下条件的数对(a,b)对数:a,b 均为正整数且 a,b<=n 而 lcm(a,b)>n。其中的 lcm 当然表示最小公倍数。答案对 1,000,000,007 取模【输入格式】第一行一个正整数 n。【输出格式】一行一个整数表示答案,对 1,...

2019-10-03 21:48:03 199

原创 2019.9.27 noip模拟赛

T1 string【题目描述】给定一个由小写字母组成的字符串s。有m次操作,每次操作给定3个参数l,r,x。如果x=1,将s[l]~s[r]升序排序;如果x=0,将s[l] ~ s[r]降序排序。你需要求出最终序列。【输入数据】第一行两个整数n,m。第二行一个字符串s。接下来m行每行三个整数x,l,r。【输出数据】一行一个字符串表示答案。【样例输入】5 2cabcd1 3 1...

2019-09-28 19:45:04 425

原创 2019.9.15 noip模拟赛

T1 密码【问题描述】你来到了一个庙前,庙牌上有一个仅包含小写字母的字符串 s。传说打开庙门的密码是这个字符串的一个子串 t,并且 t 既是 s 的前缀又是 s 的后缀并且还在 s 的中间位置出现过一次。如果存在这样的串,请你输出这个串,如有多个满足条件的串,输出最长的那一个。如果不存在这样的串,输出"Just a legend"(去掉引号)。【输入格式】仅一行,字符串 s。【输出...

2019-09-17 19:34:27 152

原创 2019.9.06 noip模拟赛

T1 Mushroom的序列【问题描述】Mushroom手中有n个数排成一排,现在Mushroom想取一个连续的子序列,使得这个子序列满足:最多只改变一个数,使得这个连续的子序列是严格上升子序列,Mushroom想知道这个序列的最长长度是多少。【输入格式】第一行一个整数n,表示有n个数。第二行为n个数。【输出格式】一个数,为最长长度。【输入样例】67 2 3 1 5 6【输出...

2019-09-07 07:58:09 138

原创 2019.8.28 noip模拟赛#6

T1 简说是简,其实真的很简单。考虑最原始的贪心。将数组从小到大排序,第(2i−1)(2i-1)(2i−1)个和第2i2i2i个为一组,最后把每组的较小值累加起来就是答案。至于正确性,因为数组单调递增,所以后面的数一定比左边的数大。不妨设a≤b≤c≤da\leq b\leq c\leq da≤b≤c≤d,且aaa与bbb一组,ccc与ddd一组,那么原先会被计入答案的是aaa和ccc。将aa...

2019-08-28 21:05:41 158

原创 2019.8.26 noip模拟赛#5

T1 序列一道超级细节的模拟题,需要注意很多细节。我分了三类,写了100+行,而hzy大佬才写了50+行。其实很简单。直接贴代码吧:#include<cstdio>#include<algorithm>#define maxn 100005using namespace std;int n;int a[maxn],b[maxn],ans[maxn];in...

2019-08-27 21:11:05 167

原创 Link Cut Tree模板

待写

2019-07-25 11:55:10 134 1

原创 树链剖分

待写

2019-07-25 11:54:24 106

原创 2-sat思想及入门

2-sat思想及入门什么是2-sat例题分析建边判断有解输出方案完整代码什么是2-sat要知道2-sat是什么,我们先要知道什么是适定性(Satisfiability)问题,适,就是合适,定,就是确定,适定性问题通俗的说就是确定是否可以满足所有的条件?或者说就是确定一个满足所有条件的方案。取英文的前三个字母,简称sat问题。通俗的sat问题表述一般是这样的:有很多个集合,每个集合里面有若...

2019-07-14 15:20:56 857 2

原创 陌上花开——浅谈CDQ分治

陌上花开——浅谈CDQ分治什么是CDQ分治大体思路例题解法完整代码什么是CDQ分治CDQ分治,就是一种分治思想。可能度娘比我解释地更清楚。主要用来求偏序。大体思路如图所示:将一个区间[l,r][l,r][l,r]一直向下二分为[l,mid][l,mid][l,mid]和[mid+1,r][mid+1,r][mid+1,r];返回时分别处理区间[l,mid][l,mid][l,mid...

2019-07-11 14:55:16 199 2

转载 后缀数组求法(搬运)

请参看@自为风月马前卒的博客,本博客只是为了帮助我自己理解。后缀数组的定义:以aabaaaabaabaaaabaabaaaab为例:它的后缀数组有:1.aabaaaabaabaaaabaabaaaab;2.abaaaababaaaababaaaab;3.baaaabbaaaabbaaaab;4.aaaabaaaabaaaab;5.aaabaaabaaab;6.aabaabaab;...

2019-06-12 08:39:29 228 1

原创 Treap平衡树

浅谈Treap平衡树先从二叉查找树谈起Treap平衡树的旋转操作定义建立新节点右旋先从二叉查找树谈起二叉查找树可以用来在随机数据中高效率地查找一个数。具有以下性质:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)平均的时间复杂度为O(log n);(摘自360百科...

2019-06-05 17:48:28 180 2

原创 倍增求lca

倍增求lca什么是lcalca怎么求流程什么是lcalca,即 最近公共祖先。如上图所示,节点4和节点5的lca为节点2,节点5和节点6的lca为节点1。是不是很好理解呢?lca怎么求1.最简单的方法则是“暴力”。将深度大的节点向上走到与深度小的节点的深度相同(如节点6与节点5);之后两个节点一起向上跳,知道它们所在的节点相同(节点1)。但是这种做法的时间复杂度太高了 QAQ,所以并不...

2019-03-22 22:03:13 108 3

原创 拓展中国剩余定理

拓展中国剩余定理什么是拓展中国剩余定理拓展中国剩余定理的基本思路代码模板原型:洛谷P4777什么是拓展中国剩余定理相信大家都听说过中国剩余定理 (其实没有听说过也没关系,因为拓展中国剩余定理与中国剩余定理其实没有什么关系) 。拓展中国剩余定理的大意是这样的:给定n组非负整数ai,bi,求解关于x的方程组:x ≡ b1(mod a1)x ≡ b2(mod a2)……x ≡ bn(m...

2019-03-11 16:42:04 507 5

空空如也

空空如也

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

TA关注的人

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