自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode刷题记录(持续更新中)

2025.10.8开始刷题~记录一下过程中遇到的一些小问题C++菜鸟选手转码中 所以一些语法问题也会被一起记录^-^

2025-10-08 21:38:59 1206 1

原创 常见错误总结

博主今天因为debug\text{debug}debug的事被教训了所以记录一下在debug\text{debug}debug的过程中都发现了什么智障错误取Mod\text{Mod}Mod的时候注意输入也可能超出范围,最好在输入的时候取一下模。取模最好用函数操作进行+−∗/+-*/+−∗/之类的,要不然代码又长又容易写晕还容易取漏...

2020-10-25 22:53:04 151

原创 TO DO LIST

鉴于本人学习顺序比较杂乱,列一个blogblogblog监督自己练习部分 AGC Blue and red tree NOIP历年真题(看到我请督促我写blogblogblog) DFS基础题单(练手感+夯实基础) 提高难度的DFS题单(训练一下自己写暴力能力) 线段树题单 DP题单...

2020-08-01 14:41:04 220

原创 友链&个人(并不完整)

可爱的小姐姐淼淼

2020-04-10 10:11:26 417 2

原创 关于ZnCu

前言:这是咕了很久的一篇CSP2019CSP2019CSP2019总结,由于本人太菜+++这次发挥失常太严重,很久很久才走出这次比赛的阴影。AnywayAnywayAnyway我会在今年奋起直追,努力拼搏,不留遗憾 。这次CSP发挥的确实不好,除了当天考试状态外自己实力确实不够也是一个很大的问题。故总结这一个多月来的表现,力求下次CSP能高分省一。集训期间学法小结,得与失&学习方法反...

2020-01-05 00:10:51 811

原创 小的注意点

状态压缩DP复杂度为2n2^n2n,适用于n≤30n\le30n≤30

2019-10-18 14:57:34 113

原创 PyTorch训练流程

Dataset__len__idxDataLoadernn.Module__init__nn.Conv2dnn.Linearforwardfor epochDataLoaderbatch…它们都是的。DatasetModelnn.ModuleforwardDiceLoss无论换了什么Dataset,什么Model,什么Loss,你把它们插进那个“万能模板”里之后,那个把 PyTorch 想象成一个“这个积木盒里,有。

2025-10-27 18:16:13 714

原创 Python-__init__函数

_init__“请为我创建一个全新的节点对象TrieNodeinstance)。__init__()(这会导致NameError(这会重新初始化当前的Trie树并返回None正确的“命令”不是调用__init__。正确的“命令”是调用类名这个命令才是告诉 Python:“请运行TrieNode类的完整创建流程__new____init__),并把那个全新的对象返回给我。

2025-10-23 16:15:13 700

原创 Python中类的用法

类是通过class关键字定义的,类的实例是通过调用类的构造方法(__init__)创建的。# 类的构造方法,用于初始化实例的属性self.name = name # 实例变量self.age = age # 实例变量# 类的方法,用于执行操作。

2025-10-22 11:25:32 373

原创 Leetcode题解-530. Minimum Absolute Difference in BST Easy Topics premium lock icon Companies

原问题“求树中任意两节点的最小差值”,现在被转化成了一个更简单的问题:“的空间),我们可以在遍历的过程中就完成比较。这是一个非常微妙且经典的 Bug!了 “BST” 这个最重要的条件,效率很低。最小的差值必然出现在紧挨着的两个数字之间。(无穷大),这意味着用来存储最小值的变量。我们不需要真的先创建一个列表(这会浪费。在 Python 中,使用类变量(并比较大小之后,它才会被更新为。代码之所以没有更新它,是因为。如果你对一个 BST 进行。让我们用这个逻辑来模拟。在 Python 中,

2025-10-21 16:15:38 842

原创 快慢指针 (Floyd 环检测算法)-环形链表

如果跑道是直的(比如 100 米直线冲刺),那么跑得快的兔子 🐇 必然会先到达终点。乌龟 🐢 还在后面慢慢爬。在这两种情况下,都说明链表是直的(没有环),循环应该停止。只要两个指针在环中相遇,就证明这个链表一定有环。(比如 400 米标准跑道),会发生什么?这是这个算法中最关键的实现细节!

2025-10-18 16:05:34 613

原创 Leetcode刷题记录-Boyer-Moore 投票算法

特性描述时间复杂度OnO(n)On,因为只需要对数组进行一次完整的遍历。空间复杂度O1O(1)O1,因为只使用了candidate和count两个额外的变量,与输入规模无关。核心思想抵消/投票。利用众数数量上的绝对优势,保证其在两两抵消后仍能留存。适用场景寻找数组中出现次数超过1/k的元素,尤其是在要求线性和常数空间时。Boyer-Moore 投票算法是算法面试中的常客,因为它完美地展现了如何用巧妙的思路来优化时间和空间复杂度。

2025-10-08 20:35:00 1084

原创 Windows安装虚拟机遇到内容解码失败

你现在会看到一个蓝色的 PowerShell 窗口,它的路径通常显示为 C:\Windows\System32>。(这里的 cd 是 “Change Directory” 的缩写,意为切换目录。按回车后,你会看到命令提示符前面的路径已经改变,包含了 Downloads 字样,这表示我们已经成功进入了正确的文件夹。–绕过 wsl 命令的下载过程,直接从网站下载发行版安装包,然后手动安装它。点击屏幕左下角的 “开始”按钮(或按一下键盘上的 Win 键)。在弹出的菜单中,选择 “以管理员身份运行”。

2025-08-01 20:47:27 572

原创 Pycharm中__init__文件中只有#

因为Pycharm在代码调用某些文件时路径可能出现问题,比如找不到文件,这个时候如果在文件夹下新建一个。文件,只有一个#,就能解决这个问题。

2024-08-12 15:06:51 395

原创 深度学习--数据处理dataloader介绍及代码分析

参考博客DataLoader是深度学习中重要的数据处理工具之一,旨在有效加载、处理和管理大规模数据集,用于训练和测试机器学习和深度学习模型。DataLoader是一个用于批量加载数据的工具,它可以将数据集分成多个小批量,并逐个加载,以适应模型训练的需要。DataLoader主要用于两个关键任务:数据加载和批次处理DataLoader可以从不同来源加载数据,如硬盘上的文件、数据库、网络等。它能够自动将数据集划分为小批次,从而减小内存需求,确保数据的高效加载。

2024-08-11 23:44:19 2616

原创 深度学习--图像分割UNet介绍及代码分析

U-net 架构(以最低分辨率为 32x32 像素为例),每个蓝色框对应一个多通道特征图。通道数显示在框的顶部。x-y 大小位于框的左下边缘。白框表示复制的特征图。箭头表示不同的操作。深蓝色箭头:利用3×3的卷积核对图片进行卷积后,通过ReLU激活函数输出特征通道;灰色箭头:对左边下采样过程中的图片进行裁剪复制;红色箭头:通过最大池化对图片进行下采样,池化核大小为2×2;绿色箭头:反卷积,对图像进行上采样,卷积核大小为2×2;青色箭头:使用1×1的卷积核对图片进行卷积。

2024-08-06 22:27:00 3533 2

原创 深度学习笔记(神经网络+VGG+ResNet)

激活函数(Activation Function),就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端,旨在帮助网络学习数据中的复杂模式。ReLU(Rectified Linear Unit)是一种常用的激活函数,全称为修正线性单元。它的主要作用是将输入值限制在一个非负的范围内。具体而言,当输入值小于0时,输出值为0;当输入值大于等于0时,输出值等于输入值本身。原理:SGD使用每个样本的梯度来更新模型参数,适用于大规模数据集。优点:简单易用,内存占用小。

2024-08-05 20:10:37 1188

原创 深度学习程序环境配置

因为之前轻薄本没有显卡跑不起来,所以换了台电脑重新跑程序,故记录一下配置环境的步骤及常见错误。

2024-07-17 16:15:51 1413 1

原创 杠杆是什么

杠杆是一种金融工具,通过借款或其他负债形式来增加投资规模,以放大投资的盈亏。它能够提高资本利用效率,增加投资回报的潜力,但同时伴随着一定债务偿还风险。

2024-02-23 13:20:42 3259

原创 分析基金好坏

根据私募排排网信息分析基金好坏(建议与投资策略那篇文章一起阅读)

2024-02-22 14:52:44 1090

原创 分析投资策略数据

指数是一个选股规则,例如,沪深300指数是从国内上市公司中挑选出300只市值最大的股票。我们可以把指数看作是一篮子股票的集合。

2024-02-19 17:24:51 2233

原创 使用Python做策略回测

在找与收盘价最接近的行权价时,我们已知每日期权的情况,需要从文件名中提取数字,并使用二分法查找。当文件名中有多个数字时,可以使用Python 的re模块来提取文件名中的最后一个数字其中matches是前缀符合当前查找要求的文件名组成的list,numbers为储存文件名中最后一个数字(在这里为行权价)的list!

2024-01-29 13:42:56 999 3

原创 Matlab学习笔记(不定期更新)

里键入自己需要搜索的函数,逐个点击需要查询的链接即可找到函数用法。

2023-09-20 21:51:53 532

原创 c++查看程序静态内存

由于CSPCSPCSP最有把握也是期望得分最高的一道题因为MLEMLEMLE挂零了,所以学了一手如何查询程序静态内存在所有变量定义之前先设定一个charcharchar类型变量,此时指向的地址就是程序最开头的内存地址,同理在最后也设定一个,指向所有变量之后存储的内存地址,两个地址相减得到了占用的内存字节。一般看程序内存都是MMM为单位,所以转换一下/1024/1024/1024/1024/1024/1024就好了。#include <bits/stdc++.h>using namespa

2020-12-04 16:52:57 848

原创 2020-11-28NOIP模拟T1【区间DP】

这道题一开始被卡贪心思路然后发现大样例都过不了良心大样例对于一个数列2 4 2 3 4 32\ 4\ 2\ 3\ 4\ 32 4 2 3 4 3,贪心思路只取444,但是显然取2 32\ 32 3更优。正解:区间DPDPDP,看到对于区间操作求最值,但又不是维护一些最大值最小值之类的区间性质的时候,就可以联想一下区间DPDPDP的方法。具体做法:令f[i][j]f[i][j]f[i]

2020-11-28 22:39:27 231

原创 琪露诺【单调队列优化DP】

琪露诺#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <string>using namespace std;const int N=400000+50;int a[N],q[N],f[N],head=1,tail=1,p;int n,l,r;int ans=0;inline int read(){ int

2020-11-06 11:10:36 183

原创 2020-11-05NOIP模拟T1【二分染色】【DP/01背包】

思路原题链接(考试题不要求输出方案)第一步:建反图这道题如果想到了建反图思路就很明显了。建反图:如果两个人不互相认识,就连一条边。对反图求出所有连通块。容易发现在反图里连通的点一定不是相互认识的且在反图中不同连通分量中的点一定是相互认识的,那么就是说如果在反图里有边那么在原图里一定不能在同一个集合中。对相邻的顶点进行二分图染色,如果相邻点可以被染成不同颜色,那么就可行,反之不行。那么这道题就是在反图上进行二分图染色判断。第二步:010101背包考虑这个染色问题的附加限制条件:要使两个集合的人数尽

2020-11-06 11:08:46 182

原创 2020-11-05NOIP模拟测T2

原题链接但我没加多组数据爆零了zbl题目中提供了一个跑路器概念,即走2k2^k2k长度需要1s1s1s,容易发现对于一条边,相当于202^020,所需时间也是1s1s1s,那相当于能绕2k2^k2k条边到达的点就可以连一条长度为111的边跑最短路。倍增判断从一个点到另一个点绕2k2^k2k次边是否可达即可。观察数据范围发现FloyedFloyedFloyed可过,最外层循环判断从一个点到另一个点绕2k2^k2k次边是否可达,内三层就是FloyedFloyedFloyed。总复杂度O(n3∗32)O(

2020-11-06 08:17:52 158

原创 矩阵快速幂

【模板】矩阵快速幂去年这个时候也是在学矩阵快速幂,但去年抄的ACACAC代码自己都看不懂了。。。神仙题解主要是用来优化递推的,对决策递推式构建一个矩阵然后快速幂就好了不知道为什么写的函数乘就错了,写重载运算符就对了,初始buildbuildbuild函数最好写在结构体里,或者记得加上&\&&记得long longlong\ longlong long#include <bits/stdc++.h>#define ll long long

2020-11-05 09:10:44 106

原创 2019-CSP-S划分

划分myymyymyy证明这道题其他博客已经讲的很清楚了,就是发现这个转移满足单调性然后能满足后面的一定满足前面。主要讲讲为什么单调队列的转移为什么是q[l+1]q[l+1]q[l+1]而不是q[l]q[l]q[l],由这道题目转移的性质,我们要把这道题决策点的转移尽量卡满(能靠右一定要靠右),那如果满足单调队列里队头决策点的下一个决策点能转移,那么当前队头决策点就一定能被弹掉。如果q[l]q[l]q[l]被弹掉了q[l+1]q[l+1]q[l+1]不一定能满足,那么这道题单调队列转移就会出问题。同时

2020-11-04 21:10:58 694

原创 2020-11-03 NOIP模拟 T2

题解对于nnn较小的情况进行动态规划。令f[i][j]f[i][j]f[i][j]为当前有i张重掷符卡,当前骰子点数为j,可能的最大期望伤害。如果使用了重掷符卡,那么从1+16∑k=16f[i−1][k]1+\frac {1}{6}\sum^{6}_{k=1}f[i-1][k]1+61​∑k=16​f[i−1][k]转移,否则丢弃这张符卡从f[i−1][j]f[i-1][j]f[i−1][j]转移。打表可以发现对于充分大的iii,f[i][j]=f[i−1][j]+1f[i][j]=f[i-1][j]

2020-11-04 09:24:35 171

原创 2020-11-03 NOIP模拟 T1

题意构造一棵树使其中恰有aaa个点度数为111,bbb个点度数为333,或输出无解。首先一个很显然的,如果b>a+2b>a+2b>a+2那么一定是无解的。然后b=a−3b=a-3b=a−3时一定也是无解的↓↓↓证明:设树上除了这a+ba+ba+b个点还有ccc个点,总点数为nnn,第iii个点度数为did_idi​,则假设b=a−3b=a-3b=a−3对于度数关系有2(n−1)=a+3b+∑icdi=a+3(a−3)+∑icdi2(n-1)=a+3b+\sum^{c}_{i}d

2020-11-03 21:59:53 174

原创 2020-11-02 NOIP模拟T1

题解使用操作111只是为了给操作222或操作333凑整,因此问题变为递归考虑在进行了x1x1x1次操作111后再进行x2x2x2次操作222或者操作333使得(x1+x2)(x1+x2)(x1+x2)有最小值即可。于是按照这个思路对问题进行分治处理,设fnf_nfn​为将nnn操作到000所需要的最小次数,可以得到如下式子:fn=min{fn,f(n/2)+(n%2),f(n/3)+(n%3)}f_n=min\{f_n,f_{(n/2)}+(n\%2),f_{(n/3)}+(n\%3)\}fn​=

2020-11-03 10:15:45 178

原创 Vigenère 密码

VigeneˋreVigenèreVigeneˋre 密码简单题已经不会了,碰上简单题先不要着急写代码,告诉自己冷静下来一定能做出来,不要胡乱着急瞎写代码然后调很久浪费大量时间,冷静分析好性质和做法之后再写。暂时没想出来也不要慌,多造几组数据手玩找规律,写出来了先不要激动放下这道题,先手玩几组特殊数据看看有没有漏判情况。输出了样例之后发现它就是密文的字母序+秘钥的字母序+1在%26\%26%26情况下的字母序(其实是没看懂题目那个表具体啥意思但是猜到了应该是某种字母序在%26\%26%26的情况下经

2020-11-01 20:41:06 208

原创 2020-10-31 NOIP模拟T1

题意已知一个二叉搜索树,求依次插入而形成这颗树的序列数量思路首先建树是显然的(dbq我一开始想了很久这树咋建)二叉搜索树与别的普通的树不同,发现每个节点的位置其实只与它的父节点(看从哪个角度看吧,也可以说是子节点)有关,所以每次建树只需要记录它的左儿子和右儿子然后按照二叉搜索树的性质来建树就可以把这棵树建完了。然后我们继续观察这棵树,发现对于这个已知的树,每棵子树(包括整棵树)的根节点是确定的,然而每棵子树(不包括整棵树)的根节点又与它自己的父节点相关,于是我们就可以联想到树形DPDPDP了。对

2020-11-01 14:34:23 217

原创 NOIP2014 解方程

解方程这道题用秦九韶算法就可以把原本n2n^2n2的算法优化到nnn次乘法与nnn次加法了(直接推的话只要有点文化课数学基础也是很好推的)这道题卡点并不在时间复杂度与算法,而是为了避免高精度要%\%%一个大质数比如1e9+71e9+71e9+7之类的。这题写成这样我们仍然只能获得30pts30pts30pts的好成绩 最丧心病狂的是这题在读入优化的时候也要记得取模!!!出题人你没有心记得取模就过了#include <bits/stdc++.h>#define int long long

2020-10-29 20:49:42 211

原创 [NOI2015]荷马史诗【哈夫曼编码】

[NOI2015]荷马史诗推荐一篇题解(感觉自己讲不清楚所以不如直接粘题解)观察之后发现这就是哈夫曼编码,于是按照编码方式构造即可。#include <bits/stdc++.h>#define ll long long#define int long long using namespace std;struct node{ ll w,h; node(){w=0,h=0;} node(ll w,ll h):w(w),h(h) {} bool operator <(

2020-10-29 15:37:37 329 1

原创 线段树分治学习笔记

参考博客1参考博客2核心思想&\&&适用范围遇到如下问题:有一些操作,每个操作只在 l∼rl \sim rl∼r 的时间段内有效。有一些询问,每个询问某一个时间点所有操作的贡献。解决:将操作离线后建立一棵在时间轴上的线段树,这样对于每个操作,就转化成了在线段树上进行区间操作。遍历整颗线段树,到达每个节点时执行相应的操作,然后继续向下递归,到达叶子节点时统计贡献,回溯时撤销操作即可。这样的思想被称为线段树分治,可以在低时间复杂度内解决一类在线算法并不优秀的问题。例

2020-10-29 14:01:57 331

原创 数的划分【DFS】

数的划分考虑不重复,所以升序记录每一次划分,注意到可以进行最优性剪枝,当sum+i∗(k−cur)>nsum+i*(k-cur)>nsum+i∗(k−cur)>n(因为枚举的数是递增的,枚举了当前数之后还要(k−cur)(k-cur)(k−cur)个比iii还大的数,如果在iii的时候已经不合法了后面也一定不合法)时,当前枚举的已经不合法了可以停止搜索了。因为当前值直接是在dfsdfsdfs状态里,所以回溯的时候不用对cur,sumcur,sumcur,sum的值进行操作。#incl

2020-10-29 09:05:24 347

原创 [BJOI2018]求和

[BJOI2018]求和先用倍增找出查询两点的LCALCALCA,如果LCALCALCA就是它们中的一个,那就直接在链上处理,注意whilewhilewhile它是怎么运行的,不要忘了加上最后LCA的贡献(做题的时候一定要想清楚再写,最好造几组特殊数据手玩)(要不是把题解扒了一篇下来对拍我估计还在WAWAWA)。如果LCALCALCA不是它们中的一个,那就分别拆成两条链来处理,也注意如何计算LCALCALCA的贡献。注意到kkk很小,直接暴力计算即可(然而我还非常智障的去问神仙有没有公式来算这个⋯\cdo

2020-10-29 08:39:31 274

空空如也

空空如也

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

TA关注的人

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