自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Acwing算法笔记

定义: 首先给定一个原数组a:a[1], a[2], a[3], a[n];然后我们构造一个数组b : b[1] ,b[2] , b[3], b[i];map内部实现了一个红黑树(红黑树是非严格平衡二叉搜索树,而AVL是严格平衡二叉搜索树),红黑树具有自动排序的功能,因此map内部的所有元素都是有序的,红黑树的每一个节点都代表着map的一个元素。:给a数组中的[ l, r]区间中的每一个数都加上c,只需对差分数组b做 b[l] + = c, b[r+1] - = c。叫做a数组的差分数组。

2024-03-26 12:43:44 1805 1

原创 天梯赛 L2-025 分而治之

这个题的主要考点还是邻接表建图,很简单的一道题,每次只需要判断没有被摧毁的城市邻居是不是都被摧毁了。

2025-04-02 16:23:23 295

原创 天梯赛 L2-024 部落

一个并查集题目,难点就在于统计总人数,使用map即可,还有需要注意的是编号不一定是小于N的,小于10000的,需要注意。

2025-04-02 16:05:01 212

原创 天梯赛 L2-023 图着色问题

使用vector<vector<int>> g(N)去存储边,然后每次判断每个节点的邻节点是不是相同的颜色,需要注意的是不同的颜色一定需要为K种,不能多也不能少。

2025-04-02 15:37:30 228

原创 天梯赛 L2-022 重排链表

使用两个map记录每个地址对应的值和每个地址对应的下一个地址,然后模拟即可。

2025-03-28 16:38:44 204

原创 天梯赛 L2-021 点赞狂魔

使用map嵌套map记录每个用户的标签数,再使用结构体排序输出即可。

2025-03-28 15:55:57 100

原创 天梯赛 L2-020 功夫传人

【代码】天梯赛 L2-020 功夫传人。

2025-03-28 15:14:50 84

原创 天梯赛 L2-019 悄悄关注

很简单的一道题,不做解释。

2025-03-28 14:25:02 66

原创 天梯赛 L2-017 人以群分

很简单的一道排序计算题。

2025-03-23 17:28:36 73

原创 天梯赛 L2-016 愿天下有情人都是失散多年的兄妹

使用三个数组分别记录每个人的父亲、母亲、性别id,然后使用bfs去搜索五代以内的祖先,如果另一个人五代以内的祖先与这个有重合,就输出Np,有个坑点,会导致测试点只通过两个,就是在存储的时候也要存下来父亲和母亲的性别。

2025-03-23 17:15:58 107

原创 天梯赛 L2-015 互评成绩

很简单的一道排序计算题。

2025-03-22 18:11:42 73

原创 天梯赛 L2-014 列车调度

【代码】天梯赛 L2-014 列车调度。

2025-03-22 17:59:01 233

原创 天梯赛 L2-013 红色警报

这道题题意就是给你一个图,一次打掉k个点,如果当前点能够使得连通块数量增加,就输出警告,其它的正常输出,最后如果k==n就输出游戏结束。可以采用并查集暴力求解也可以采用bfs求解,我这里采用的是bfs,每次打掉一个点,我们先标记该点被摧毁,如果当前点的度为0或1,就一定不会影响连通块的数量,否则就找一个该点的未被摧毁的邻接点,从这个邻接点开始bfs,把所有相邻的点全部标记为1,在判断当前摧毁点的未被摧毁的邻接点是否全被标记为1,如果有0就代表,联通块增加。

2025-03-22 17:16:38 204

原创 天梯赛 L2-011 玩转二叉树

和上面一道树的题思路一样,只需要换一下递归的顺序即可。

2025-03-20 20:55:49 175

原创 天梯赛 L2-012 关于堆的判断

还有从字符串中读入数据,如:sscanf( s.c_str() , "%d is the root" , &x);用数组模拟堆,其中需要注意的就是up函数的写法,

2025-03-20 20:52:47 421

原创 天梯赛 L2-010 排座位

还是比较简单的一道题,思路就是并查集 + map<int,map<int,int>>,其中并查集用来把所有是朋友的放到一起,map用来存储两个人是否是敌人。

2025-03-19 21:31:46 217

原创 天梯赛 PTAL2-009 抢红包

很简单的一道模拟题,使用map统计每个用户的钱数和红包数,最后在使用结构体存储,重载小于号,sort排序即可。

2025-03-19 21:00:13 165

原创 天梯赛 L2-008 最长对称子串 (天梯赛常用string函数)

使用substr和reverse的一种写法,很奇怪能过,时间复杂度n3关于string常用函数的用法:1.isalpha(char ch) : 判断某个字符是不是字母,如果是返回值非0,反之返回值为0。2.isdigit(char ch) :判断某个字符是不是数字,若是返回非0,反之返回03.isalnum(char ch) :判断某个字符是不是数字或者字母,若是返回非04.islower(char ch) :判断某个字符是不是小写字母,若是返回非0。

2025-03-19 20:42:55 999

原创 天梯赛 L2-007 家庭房产

看了一个讲解视频后,学到了并查集的带权合并,就是额外开几个数组,合并的时候把对应的value也加上即可,注意我们要让最小的成为一个并查集(家庭)的代表,所以在合并的时候就判断一下,如果xx > yy 就交换,还要注意的是,因为代码中fa没有初始化,默认全为0,所以需要对0进行特殊处理,不然默认fx[0=0,导致如果没有0,结果却有0,所以,我们就初始化fa[0] = -1,还需要在find中对0进行特判,防止越界。

2025-03-19 18:54:23 200

原创 天梯赛 L2-006 树的遍历

这个题目就是考察建树,有两种写法,第一种比较简单,但只适合节点值1e6以内的,第二种使用结构体,地址分配。

2025-03-19 14:04:37 175

原创 天梯赛 L2-005 集合相似度

很简单的一道L2,直接使用unoredred_map记录两个数组的交集和并集即可。

2025-03-18 23:40:48 143

原创 天梯赛 L2-004 这是二叉搜索树吗?

正常来说需要中序再加上前序或后序才能建树,但这是一个搜索树,我们可以发现每一个节点的左子树都小于它,右子树都大于它,我们先不考虑镜像,镜像就是条件变一下,所以我们可以对先序遍历递归判断,对于每一个点,找到第一个大于它的那个点l,再判断从这个l+1到r是否都大于它,满足就是一个二叉搜索树,后序遍历也是递归的同时求得,后续还会加强对树的前序、中序、后序遍历的学习。

2025-03-17 21:49:39 196

原创 天梯赛 L2-003 月饼

按照月饼的单价排序,使用sort,重载<即可。

2025-03-17 20:15:45 82

原创 天梯赛 L2-002 链表去重

使用unordered_map记录每个地址的下一个地址,对于每个节点判断以下,已经出现过了,就放到ans数组中,其他的放到ans1中,注意遇到-1就直接结束。

2025-03-17 19:51:31 199

原创 天梯赛 L2-001 紧急救援

邻接矩阵存图+Djikstra算法,注意需要输出最短路径的数量,和经过的路径,数量我们使用一个数组计算,每次找到最短路时更新,路径,我们使用path[N]数组标记每个点的最短路径前一个节点,最后使用递归输出,递归到起点返回,开始输出。

2025-03-17 14:38:13 225

原创 J甜甜圈-河南省第十三届ICPC大学生程序设计竞赛

赛后学了学树状数组,我们可以让每个点为1代表当前位置有甜甜圈,然后初始化树状数组c[i],然后在每次选取最大值过程中,更新c[i]单点也就是nowi为-1,然后树状数组可以快速求出当前区间1的个数,就代表需要移动的个数,循环n1 + n2次即可,时间复杂度为nlogn。牛客网是互联网求职神器,C++、Java、前端、产品、运营技能学习/备考/求职题库,在线进行百度阿里腾讯网易等互联网名企笔试面试模拟考试练习,和牛人一起讨论经典试题,全面提升你的技术能力。

2024-05-18 19:33:53 330

原创 2024年GPLT团体程序设计比赛——赛后题解

第一次参加天梯赛,成绩并没有达到我的预期,拿了150分,什么奖也没有拿到,难过。赛后补题,比赛时轻松多了。赛时老是拿不满分数,一调调半年,结果还是拿满,还浪费了大把时间,第一次参加这么大型的比赛还是挺激动的,也见识了很多,希望下一次能够拿到一个好的奖励。L1毁了我的国三梦。

2024-04-24 23:45:52 2319 1

原创 2024年华北水利水电大学第六届ACM-ICPC程序设计大赛校赛-正式赛

这次校赛写的还是挺崩的,许多大佬都打崩了,我在最后30分钟侥幸过了2题,最终写了5题,排名还是比较靠前的(没有参考价值),这次校赛见到的也都是以前没见过的,也真的学到了很多。

2024-04-03 23:51:29 1515 13

原创 2024年华北水利水电大学第六届ACM-ICPC程序设计大赛线上初赛

线上热身赛题解

2024-03-29 22:23:34 2503 11

原创 L2-043 龙龙送外卖

这个题主要考察树的dfs......

2024-03-27 22:01:18 147 1

原创 逆元的两种求法

(1)p为质数:用快速幂和费马小定理即可求出。(2)p不是质数:我们用拓展欧几里得定理求。

2024-03-27 00:12:01 144 1

原创 01背包中装满背包的情况

这个题主要就是01背包的模版,对于恰好装满,我们需要初始化dp为某个值,在遍历更新过程中能够识别出dp[j-v[i]]是否被访问。

2024-03-26 23:29:19 157

原创 几大背包模版介绍

​ 有的物品只可取一次,有的物品可取有限次,有的物品可取无限次。​ **一维写法(优化版):**我们可以模仿01背包的一维。

2024-03-26 00:30:12 193

原创 codeforces round936——C(Tree Cutting)

这个题目,很容易就能想到二分子树的长度,难的是check函数,对于二分的长度,我们需要dfs贪心的切割,如果子树长度达到mid就切断,cnt++,最后判断一下cnt是否大于m。题目大意:给你一个树和一个剪切点树k,你需要求出删除 k 条边后,每个子树的最大长度。

2024-03-24 17:02:33 489 1

原创 牛客周赛32——小红的矩阵修改

状态压缩dp,对于每一个串,我们使用一个三进制数表示,由于只有三种字符,我们使用3进制数表示,这样一共就只有81中状态。

2024-03-23 17:54:09 303 1

原创 牛客周赛32——小红的回文串

【代码】牛客周赛32——小红的回文串。

2024-03-22 17:53:01 228 1

原创 模版题——多路归并

2.第二部贪心,对于我们能到达的前n个鱼塘,我们在这剩余的t时间,要钓到的肯定是前t个最大的,这就涉及到了多路归并问题。这个题目主要考的是多路归并的思想和两步贪心。1.第一步贪心,我们不会出现反复横跳的情况。

2024-03-21 00:21:50 320 1

原创 模版题——判断子序列

【代码】模版题——判断子序列。

2024-03-20 23:28:45 133 1

原创 模版题——数组元素的目标和

给定两个升序排序的有序数组 A 和 B,以及一个目标值 x。请你求出满足 A[i]+B[j]=x 的数对 (i,j)。数组下标从 0 开始。

2024-03-20 23:09:28 260 1

原创 模版题——最长连续不重复子序列

这个题目是一个双指针经典题目,我们使用i和j两个指针计算最大长度,对于每一个i,由于[j, i - 1]是前一步得到的最长连续不重复子序列,所以如果[j, i]中有重复元素,一定是a[i],所以我们移动j,直到不存在重复元素,并更新最大长度。对于区间i-j是否存在区间元素,我们在输入的时候,使用哈希mp计算元素a[i]的出现次数,即a[i]++,如果a[i]>1,就移动j。给定一个长度为 n 的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。

2024-03-20 22:28:05 210 1

空空如也

空空如也

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

TA关注的人

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