自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

QQ2530063577的博客

Everything negative - pressure, challenges - is all an opportunity for me to rise.

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

原创 逻辑斯特 + 神经网络梯度下降公式推导 + 向量化

全部推导来自吴恩达老师的视频课,下面仅作整理。

2024-03-13 15:01:01 456

原创 E - Booster(数位dp,TSP旅行商问题)

【代码】E - Booster(数位dp,TSP旅行商问题)

2022-10-24 12:19:18 312 1

原创 D - Robot Arms 2(dp)

可以发现,本题 x 轴和 y 轴可以分开单独考虑,x,y轴相当于两个 easy version。最后判断一下终点的两个位置是否同时可达即可。注意简单离散化一下坐标,因为坐标可取到负值。首先让我们先看一个简单版本。

2022-10-24 11:50:45 325

原创 Color Sequence(dp)

给出一个长度n 的序列,求有多少个连续子序列,满足所有的元素出现的次数为偶数。思路比较巧妙,可以归类为 “状态基dp”

2022-10-10 23:37:04 193

原创 K. 复合函数 (基环树)

【代码】K. 复合函数 (基环树)

2022-10-10 23:10:47 223

原创 J - Mex Tree (思维)

【代码】J - Mex Tree (思维)

2022-10-10 22:46:39 188

原创 旋转水管(dfs)

【代码】旋转水管(dfs)

2022-10-10 22:40:52 143

原创 A Simple Math Problem(容斥原理)

【代码】A Simple Math Problem(容斥原理)

2022-10-10 22:20:10 215

原创 Serval的试卷答案(线段树)

维护方式:单独维护区间中16种相邻字符的数量,具体的:维护区间中 AA,AB,AC,AD …DA,DB,DC,DD的数量。(我的代码用0~15代表这16种组合)实现起来有一点点复杂,需要注意一些细节。然后线段树维护区间中有个位置必须放置隔板。

2022-10-10 21:46:51 254

原创 可持久化线段树(主席树模板)

可持久化线段树(主席树模板)

2022-09-22 23:02:31 134

原创 珂朵莉树(模板)

①②。

2022-09-20 10:44:25 156

原创 Link with Game Glitch(spfa判负环)

给出n种物品,这些物品可以进行转换。最大取多少,才能使这些物品无法转换成无限多的物品。明显就是一道图论题目。

2022-07-31 09:58:15 187

原创 Link with Bracket Sequence I(状态基多维dp)

给定一个长度为n的括号序列a,问构成长度为m()的合法括号序列b有多少种方案。个左括号还没有匹配的方案数。

2022-07-27 18:06:05 190

原创 C. Recover an RBS(括号序列,思维)

问是否只有一种合法方案,使得该序列可以翻译成正确的算数表示式。现在将其中的几个字符替换为。num表示当前未确定的问号数量。输入保证至少存在一种合法方案。从左到右遍历,具体细节看代码。cnt表示左括号的数量。......

2022-07-23 00:29:46 449 1

原创 Chiitoitsu(期望dp)

每次可以从牌堆摸一张牌,且必须弃一张牌(不放会牌堆)。当手上14张牌是7种不同的对子时,立刻获胜。某种麻将有34种牌型,每种牌型都有四张。现在手上有13张牌,每种类型的牌不超过2张。假设摸到的牌不成对,该种牌剩余的数量可能是0、1、2、3,而手中单牌剩余都是3张。若摸到的牌可以凑成对子,则随机丢弃一张单牌;问在采用最优策略的情况下,获胜的期望摸牌轮数。每次摸完一张牌后,牌堆中该种牌型最多剩余三张。......

2022-07-22 23:15:41 220

原创 C. Doremy‘s IQ(贪心)

首先考虑到前面执行测试会影响到后面的情况,所以就可以考虑反向思考。当然也可以正向思考,只不过正向思考比较麻烦。对于方案中的第一个使q减小的测试,其实可以将其调换到最后面的没有进行进行测试的一个位置。给出一个长度为n的序列a,按次序遍历。可以跳过某个测试,q不发生变化。不断执行上面的调换,直到该位置后面所有的都进行了测试。问最多可以执行几次测试,输入最优方案的01序列。前面的部分,只有不会使q减小的进行测试。为了让会使q变小的测试尽量排在后面,直到q等于输入中q的值。的大小,都进行测试。...

2022-07-20 23:23:54 497

原创 Mark and Lightbulbs(思维)

给出两个长度为n的01字符串s和t。问最小需要多少次该操作,才能把s变成t?这题挺考研观察力的。

2022-07-16 16:51:26 260

原创 E2. Escape The Maze (hard version) (思维 + 最短路)

有一个n个点的迷宫,迷宫有n-1条边,是一棵树。A在节点1,k个朋友在k个不同的节点。每秒所有人都可以移动到相邻的一个节点中,可以同时到达同一个节点。A和他的朋友可以在同一个节点或者在一条边的中点相遇。如果A在不遇到他的朋友的情况下,可以移动到任意一个叶子节点,A获胜,否则A的朋友们获胜。A到所有朋友的最小距离,那么A就获胜。反过来就是A的朋友们获胜。问如果A的朋友获胜,这k个人中最少几个人就可以抓A。A的朋友获胜,求解最小朋友数量。如果A到叶子节点的最小距离。...

2022-07-16 01:28:16 664

原创 G2. Passable Paths (hard version) (树的直径 + lca)

给出一个n个结点的树。现在有q个查询,每个查询给出k个点,问是否存在一条简单路径,使得,这k个点都在这条路径上。路径上可以经过这k个点以外的其他点。但要求每条边最多只能走一次。

2022-07-15 11:58:50 272

原创 F. Equate Multisets(贪心)

给出两个长度都为n的数组a和b。每次可以对b中任意一个数进行两个操作中的一个(1)乘二(2)向下取整除二。操作顺序不限制,次数不限制,问经过一些操作后,b能否与a相同。

2022-07-15 00:19:33 767 2

原创 E. Split Into Two Sets(二分图性质 + 种类并查集(扩展域))

节点由两个集合组成,且两个集合内部没有边的图。

2022-07-14 22:44:14 620

原创 搬砖(贪心微扰 + 01背包)

第十三届蓝桥杯国赛有 nnn 个物品,第 iii 个物品的体积和价值分别为 vi,wiv_i, w_ivi​,wi​ 。现在从这n个物品中取出一些物品,排成一行,使得每一个物品的价值大于等于其前面的物品 总体积。求取出的物品最大的价值。贪心微扰有点玄学呀。。可以先做做 《国王游戏》这道题目,了解一下 “微扰” 法分析题目的过程。首先,考虑到怎么保证某件物品其前面的物品总体积小于该物品的价值时,就会很没有头绪。然而,正难则反嘛。所以,可以先处理前面的物品,然后先处理后面的物品。之后就是选择物品。思考后可以

2022-07-14 16:56:23 101

原创 智乃买瓜(dp背包)

2022牛客寒假算法基础集训营3Version One题意状态转移方程:dp[i][j]=dp[i−1][j−w[i]]+dp[i−1][j−w[i]/2]dp[i][j] = dp[i - 1][j - w[i]] + dp[i - 1][j - w[i]/2]dp[i][j]=dp[i−1][j−w[i]]+dp[i−1][j−w[i]/2]CODEconst int N = 2e3 + 7;ll dp[N], a[N];int main(){ IOS; int n, m; c

2022-07-14 10:18:26 66

原创 D - Dire Wolf(区间dp)

2014ICPC北京有n条狼排成一排,每杀掉一个狼会受到 a[i]a[i]a[i] 的伤害,同时,每个狼可以为与其相邻的狼增加 b[i]b[i]b[i] 点伤害。杀掉一个狼,其余的狼自动填补空位。问:杀死所有的狼受到的最小伤害。区间合并:杀掉第k个狼后,其两侧的区间就合并了。状态转移方程:dp[l][r]=dp[l][k−1]+dp[k+1][r]+a[k]+b[l−1]+b[r+1]dp[l][r] = dp[l][k - 1] + dp[k + 1][r] + a[k] + b[l - 1] + b[

2022-07-13 16:59:54 75

原创 G. Count the Trains(思维set + 二分)

Codeforces Round #797 (Div. 3)铁轨上有 n 节车厢,每节车厢在各自的引擎驱动下可以达到一个最高速度,记录在一个序列 {ai}\{a_i\}{ai​} 里. 车厢从左到右的编号依次为 1 到 n.现在让这些车厢向左尽可能快地开动,要求靠右的车厢实际速度不能超过靠左的车厢. 这样便会形成若干段速度一致的连续数节车厢,称这样的一段为一节火车. 例如序列 a=[10,13,5,2,6] 对应的车厢的实际运行速度为 [10,10,5,2,2],形成了 3 节火车.在车厢行驶时,依次收到了

2022-07-12 19:06:45 252

原创 E. OpenStreetMap(二维单调队列)

Codeforces Round #574 (Div. 2)给定一个大小为 n×mn \times mn×m 的矩阵h, 求出所有大小为 a×ba \times ba×b 的子矩阵中最小值的和。题解求出h中,所有行中长度为b的滑动窗口中的最小值,将其结果存入f数组求出f中, 所有列中长度为a的滑动窗口中的最小值,其结果即为所有大小为 a×ba \times ba×b 的子矩阵中的最小值时间复杂度 O(nm)O(nm)O(nm)......

2022-07-12 01:12:48 155

原创 D. Rating Compression(思维 + 双指针)

Codeforces Global Round 12给出一个长度为n的数组a,其中 1≤a[i]≤n1 \leq a[i] \leq n1≤a[i]≤n。b[j]=minj≤i≤j+k−1 a[i]b[j] = min_{j \leq i \leq j + k - 1}~~~a[i]b[j]=minj≤i≤j+k−1​ a[i]判断 k = 1 ~ n 时,得到的b数组是否是一个排列。本题与其说是思维,不如说是结论题。其实排列自身的一个特点。此类的算法需要多做题总结。时间复杂度 O(n)O(n

2022-07-11 17:25:25 212

原创 D. Permutation Restoration(贪心 + 双指针)

Educational Codeforces Round 131 (Rated for Div. 2)有一个长度为n的a数组和b数组, 两者满足 b[i]=⌊ia[i]⌋b[i] =\lfloor \frac {i}{a[i]} \rfloorb[i]=⌊a[i]i​⌋ 的对应关系。现在给出b数组,求出任意一个满足该对应关系的a数组。但是,仅仅这样还不够 “贪”。...

2022-07-10 21:58:40 347

原创 Infinite Fraction Path(bfs剪枝)

2017ICPC沈阳给出n个城市,编号为[0,n−1][0,n-1][0,n−1],第i个城市有一条通向 (i2+1)%n(i^2 + 1) \% n(i2+1)%n 的单向边。每个城市对应一个 0 ~ 9 的数字。求经过n个城市所组成的长为n的最大字典序路径。为保证最终结果最大,应该尽量保证前面的数字尽量的大。所以,但仅有上面的这些是不够的。假如,D里面每一个数字都是相同的,则最终的复杂度会上升到 O(n)O(n)O(n)。为此,需要设置一个标记数组vis,对于扩展了相同长度的结点且下一步指向的边相

2022-07-10 11:46:50 168

原创 P3166数三角形(容斥+gcd)

给定一个 N×MN\times MN×M 的网格,请计算三点都在格点上的三角形共有多少个。注意三角形的三点不能共线。

2022-07-07 21:17:27 177

原创 Closest Equals(离线 + 线段树)

daimayuan div1 205本题的主要思想就是:

2022-06-16 17:59:33 128

原创 XOR Inverse(trie + 逆序对)

dp[i][j]:x二进制下的倒数第i位为j时,逆序对的数量dp[i][j]: x二进制下的倒数第i位为j时,逆序对的数量dp[i][j]:x二进制下的倒数第i位为j时,逆序对的数量对于一棵trie树,插入的字符串是一个数的二进制字符串(从高位开始插入)。其结构其实就是一棵二叉树。假如,从0到 2n - 1依次插入建立一棵trie树,最终就是一棵n + 1层的完全二叉树。对于本题中,仅仅是完全二叉树的部分节点。将每个数字从高位到低位建立一棵trie树,建树过程中,记录每个结点经过的次数cnt[p]。显然,

2022-06-15 16:23:00 207

原创 路径计数2(dp + 组合数)

daimayuan 每日一题 div1 202

2022-06-06 15:23:13 209

原创 摘桃子(双指针)

代码源 div1 201

2022-06-05 12:59:30 125

原创 J. Balanced Tree

2022 Jiangsu Collegiate Programming Contest

2022-06-04 22:45:32 478

原创 JSCPCP L. Collecting Diamonds(思维)

JSCPC L

2022-06-04 14:19:38 543

原创 C. Jump and Treasure(dp + 单调队列优化)

JSCPC给出一个从0开始,长度为n+1一段序列,从1到n每个点上都有一定价值的金币a[i](可正可负)。从0号结点开始,每次可以跳跃不超过p个结点,跳到结点i上就(假设从i号结点跳到j号结点,i

2022-06-03 23:21:15 640

原创 数学(数论)(每日一题 div2)

div2 每日一题 1103Solution观法可以发现,[1,n]这个n个数可以组成任意的[1,n(n+1)2]这些数中的任意一个[1, n]这个n个数可以组成任意的 [1, \frac {n(n + 1)}{2}]这些数中的任意一个[1,n]这个n个数可以组成任意的[1,2n(n+1)​]这些数中的任意一个。那么,问题转化为 求 n(n+1)2\frac {n(n + 1)}{2}2n(n+1)​的最大共因数。但,由于数的规模过大(1e18),我们无法直接进行 求最大因子。进一步转化,可以

2022-05-10 14:27:15 241

原创 扫描线(线段树)

AcWing247. 亚特兰蒂斯Codeconst int N = 1e4 + 4, M = 1e6 + 6;int n, num;struct seg{ double x, y1, y2; int k; bool operator < (seg a)const { return x < a.x; }}s[N * 2];double yy[N * 2];int fd(double x){ return lower_bound(yy + 1, yy + nu

2022-05-09 18:10:40 231

原创 你能回答这些问题吗(线段树模板)

AcWing245#define ll long long int#define tp t[p]#define tl t[p << 1]#define tr t[p << 1 | 1]const int inf = 0x3f3f3f3f;const int N = 5e5 + 3, M = N * 4;int n, m;int a[N];struct node{ int l, r; int sum, lm, rm, date; node()//初始化 {

2022-05-07 17:24:49 280

空空如也

空空如也

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

TA关注的人

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