自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python实现后缀数组

在字符串s中,任取i

2024-05-09 23:38:45 720

原创 python实现SGD

f(x,y)=(1−x)2+100(y−x2)2f(x,y) = (1 - x) ^ 2 + 100 (y - x^2)^2f(x,y)=(1−x)2+100(y−x2)2对于此问题,求导,统一梯度下降∂f(x,y)∂x=−2(1−x)−2∗100(y−x2)∗2x\\\frac{\partial f(x,y)}{\partial x}=-2(1-x)-2*100(y-x^2)*2x∂x∂f(x,y)​=−2(1−x)−2∗100(y−x2)∗2x∂f(x,y)∂y=2∗100(y−x2)\frac{\

2024-03-20 00:30:37 660

原创 python实现ADMM

【代码】python实现ADMM。

2024-03-20 00:28:34 1772

原创 PyQt5安装使用教程

pyuic5 -o 保存的py文件名.py 原ui文件名.ui。需要在代码中加入如下内容才可运行。具体各种控件使用方法可以上网搜索。PyQt5要求python版本。,首先新建一个conda环境。将写好的ui文件转为py文件。进入新的conda环境。激活designer。

2024-03-16 19:33:02 395

原创 python 手写矩阵类

python上课作业手写一个矩阵类,实现矩阵的加法、减法、矩阵乘法、矩阵数乘、转置、求逆,记录一下实现过程。

2023-10-28 19:59:26 299

原创 【蓝桥杯】阶乘约束

每个数分别求其质因数分解,相加就可以求出所有质因数了。(100 的阶乘)有多少个正约数。任何一个正整数都有唯一的质因数分解。

2022-12-22 21:02:34 275 1

原创 【蓝桥杯】括号序列

例如,对于括号序列 ((()(((),只需要添加两个括号就能让其合法,有以下几种不同的添加结果:()()()()()()、()(())()(())、(())()(())()、(()())(()()) 和 ((()))((()))​。计算左括号添加方案时,因为要求我们添加的括号最少,所以我们添加的左括号只能去结合原序列中的右括号,而不能和我们添加的右括号进行结合,所以我们添加左括号的方案和添加右括号的方案是互不干扰的,结果把它们相乘就可以了。的数据范围很明显搜索不行,考虑动态规划。最大运行内存: 512M。

2022-12-22 10:17:12 584

原创 【蓝桥杯】回路计数

蓝桥学院由 2121​​​ 栋教学楼组成,教学楼编号 11​​ 到 2121​​。对于两栋教学楼 aa​​ 和 bb​,当 aa​ 和 bb​ 互质时,aa 和 bb 之间有一条走廊直接相连,两个方向皆可通行,否则没有直接连接的走廊。小蓝现在在第一栋教学楼,他想要访问每栋教学楼正好一次,最终回到第一栋教学楼(即走一条哈密尔顿回路),请问他有多少种不同的访问方案?两个访问方案不同是指存在某个 ii,小蓝在两个访问方法中访问完教学楼 ii 后访问了不同的教学楼。最大运行内存: 128M。栋建筑为结尾,状态为。

2022-12-21 11:30:31 361

原创 NOIP2005过河

想到动态规划,考虑对于桥上的每一位进行动态规划,对于。分析题目,如果两块石头间的距离大于。则可以把两块石头间的距离减去。的倍数直至两块石头间距离。,这样可以把桥长缩短到。但是一看数据范围桥长。

2022-11-22 12:15:46 126

原创 C语言函数参数传入详解

函数类型 函数名(函数参数) {函数体 }函数类型::基本和变量类型保持一致,额外定义的classclassclass和structstructstruct也可以作为函数的类型,函数结束时必须返回一个与其类型相同的值,如果为voidvoidvoid类型的函数,则不需要返回值函数名::由用户自己命名的函数名称函数参数::函数的参数是本文的重点,函数的参数可以让函数从其他函数中接收值在此函数中调用,函数参数的传入方法分为值传参、引用传参。

2022-11-22 11:06:28 2013

原创 C语言字符串(字符数组)详解

∙strlen∙strlen作用:求字符串度用法strlen(s)strlen(s)strlen(s)返回值:字符串去掉最后一位\0\0的长度输出结果4∙strcpy∙strcpy作用:复制一个字符串到另一个字符串用法strcpy(s1,s2)strcpy(s1,s2),将字符串s2s2s2复制到s1s1s1;返回值s1s1s1。

2022-11-14 11:50:09 677

原创 【模板】割点Tarjan算法

qquad在一个连通无向图中,如果将该点和该点所连的边去掉,该图不再连通,则称该点为割点这个图中,2,3就是割点。

2022-11-01 17:13:14 137

原创 【模板】Tire树

TireTireTire以一个空结点为根节点,将字符串的各个字母按先后顺序依次连到树上。举个栗子,将abcabcabc和adeadeade插入树中可以观察到,TireTireTire顺着根节点出发,沿任意一条子树走到底都为一个已经存储好的字符串,对于拥有相同前缀的字符串,并不需要建立新的子树,而是在第一个不同的位置开始建立分支即可。但是为了存储相同前缀的字符串的个数,我们使用一个数组cnt[x]cnt[x]cnt[x]来表示到第x。

2022-10-28 01:38:58 685

原创 【模板】Treap

题目链接\qquad这篇文章主要介绍用TreapTreapTreap实现的平衡树其它的我不会∙\bullet∙先来介绍BSTBSTBST是什么\qquadBinarySerahTreeBinary\quad Serah\quad TreeBinarySerahTree,即二叉搜索树。其定义为左子树都小于根节点的值,右子树都大于根节点的值。∙BST\bullet BST∙BST的中序遍历结果一定是从小到大的序列。∙\bullet∙默认的,BSTBSTBST中结点的值互不相同,如果存在多个相同的值,可以

2022-10-22 21:00:54 138

原创 C语言输入输出详解

C语言本身是,输入和输出都是由C中的函数来实现的,本文主要介绍这些都是在中。

2022-10-17 11:33:47 2653 2

原创 [模板]LCA最近公共祖先

首先可以想到找到这两个点坐标,然后再向上找父节点,直至找到相同父节点。但是我们不是按照从小到大的顺序跳,而是从大到小跳,即。,显然省去很多不必要的回溯,也会将时间缩短为。如何求树上两点的最近公共祖先?但是如果从大到小跳可以直接跳到。的倍数来增大,也就是一次跳。此时就需要回溯,直到回溯到。但是这样做太慢了,会超时。这样的预处理后就可以进行。来存储每个点的深度,用。

2022-10-15 23:58:09 136

原创 左偏树模板

qquad左偏树是一棵二叉树,具有堆的性质,支持在O(log⁡2n)O(\log_2n)O(log2​n)的时间复杂度内进行合并的数据结构外结点:左儿子或右儿子为空的结点距离:一个结点的距离为该结点到最近的外结点的距离\qquad我们将空结点距离定义为−1-1−1。

2022-10-08 15:45:58 149

原创 浅谈堆及其应用

堆是一种树形数据结构,对于一个堆,其一定是一个而小根堆则额外满足左右子节点都大于父节点,大根堆则满足左右子节点都小于父节点,一般应用于求出某组数中的最大值或最小值(),本文主要介绍,

2022-10-06 19:25:38 284

原创 【随堂笔记】原码反码补码

首先给出定义∙正数的原码反码补码相同等于其本身∙负数的原码=本身,负数的反码=原码除符号位外按位取反,补码=反码+1。

2022-09-29 22:18:48 241

原创 可持久化并查集

平时因为路径压缩后查询速度过快,导致按秩合并无人问津,但是在不能使用路径压缩时按秩。可持久化,想到用可持久化数组来维护并查集,因为并查集本质上也是用数组记录的。用可持久化数组维护按秩合并的并查集时要维护两个数组,一个。合并的作用就体现出来了,按秩合并可以在。数组的值,持久化中,改变意味着需要。内找到目标节点,在只有插入操作的情。况下,按秩合并的总复杂度为。,因为路径压缩会改变。

2022-09-28 20:51:11 173

原创 luoguP3168

于是我们成功的把这道题变成了主席树模板。差分应在右端点后一位进行减操作。因为可能有超过多个相同的第。这样单点查询就变成了求。,也就是一个区间查询。

2022-09-26 19:19:07 142 1

原创 主席树【模板】

显然,如果我们将每次修改操作后的线段树存下来会消耗大量空间,但是,如果我们不存储修改操作后的整棵树,而是只增加新修改的点。对于每一次修改,我们只需要建立修改点和与其相关点的新节点就可以了,其他的点直接连在之前版本的树上就可以了。首先要明白主席树做的什么:对一棵线段树的节点进行修改,然后查询第。是在每次修改前先将上一个版本的节点复制一次。由此观察主席树的存储和线段树有明显的差异。的大佬创建的所以又叫做主席树。次操作后的线段树中的某个节点。主席树因为创建者名字缩写为。

2022-09-21 20:42:52 372 1

原创 线段树模板

因为每次只对最高的区间进行操作,如果要调用下面的区间值,则需要将其父节点的加法下传,要注意每次调用子节点之前都要将父节点的加法下传。的时间范围内对区间的和进行查询,是一种用空间换时间的方法。线段树即将线性的数据构造成树型的结构,从而在。

2022-09-17 09:40:58 152

原创 NOI2002银河英雄传

可以注意到数据范围如果不用路径压缩会超时,显然要进行路径压缩,但是路径压缩的时候要维护节点的深度。如果不用路径压缩的话很简单,每次寻找父节点的时候把整个树的深度都更新一遍。题目读完显然就是并查集,但是要维护每个点到根的距离。维护某个节点所在队列的舰艇个数。这里使用两个数组来维护。维护某个节点的深度,

2022-09-16 16:21:53 144

原创 洛谷P1126 机器人搬重物

里的,要注意障碍物位置并不是对应格点位置,而是一个障碍物占了。要注意机器人是圆形的,所以实际上可活动范围只有。用两个常量数组来存储方向,通过模来控制转向。状态的储存,一个点的状态有。,用一个三维数组存储。

2022-09-15 09:53:03 509

原创 并查集模板

并查集简单来说就是维护并判断多个族谱中的两人是否有相同的祖宗。显然,这样在查询上会明显加快,时间复杂度为。上可以降低搜索层数,即按秩合并。初始化将每个人的父亲置为自己。写一个函数来查找某个人的祖宗。来维护每个人的父亲,上面,树的深度依然是。

2022-09-14 08:41:55 105

原创 欧拉回路模板

欧拉回路

2022-09-12 23:12:39 229 1

空空如也

空空如也

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

TA关注的人

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