自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 E1-相亲派对(组合)

现在给出所有男生的颜值,以及所有女生的颜值,请你计算可以产生多少种配对。公司开展了一次相亲派对,若男生的颜值和女生的颜值相同,则可以进行配对。第一行输入男生颜值数组。数组长度不大于10000。第二行输入女生颜值数组。数组长度不大于10000。注意:颜值最大不超过100000。输出可以产生多少种配对。

2025-03-19 17:56:37 306

原创 E2-走梅花桩(并查集版)

少林寺武僧有一项训练科目就是走梅花桩,现在有 m 行 n 列的梅花桩,每个梅花桩都有一个高度,若相邻梅花桩之间的高度相差为 x,则可以走到相邻梅花桩上。),如果满足条件,则将它们合并,通过查找每个节点的根节点,计算每个根节点所代表集合的大小,最终输出最大大小。少林武僧可以选择任意起始位置,请你计算出少林武僧最多可以走多少个梅花桩。之后 m 行,每行 n 个数,分别表示梅花桩的高度。每次合并操作的时间复杂度为O(1),总的合并操作最多进行。次,因此合并操作的总时间复杂度为O(m * n)。

2025-03-19 17:39:42 631

原创 E1-数组的平衡点2(前缀和)

给定一个长度为 n 的数组 nums,若其中存在某个位置 index,使得 [0, index - 1] 范围的元素之积 等于 [index + 1, n - 1] 范围的元素之积,则称 index 位置是数组 nums 的平衡点。请你找出数组 nums 的平衡点位置,若存在多个平衡点位置,则输出最后一个,若不存在平衡点位置,则输出 null。输出数组 nums 的平衡点位置,若存在多个平衡点位置,则输出最后一个,若不存在平衡点位置,则输出 null。输入一个数组 nums,格式请见用例。

2025-03-18 16:33:32 395

原创 E1-倒 N 形走位(模拟打印矩阵)

有一个 n 行不定列的矩阵,请你从矩阵左上角位置,按照倒倒 N 形走位,依次填入 1 ~ x 数字。输入一行,两个正整数 n 和 x,其中 n 不大于 1000。输出结果矩阵,格式见用例。

2025-03-18 16:16:33 412

原创 3.进制转换

输入描述:在一行上输入一个十六进制数 s ,代表待转换的十六进制数。保证 s 转化得到的十进制数 x 的范围为 1≦x≦2^31 −1。十六进制数的格式为:0x 开头,后跟若干个十六进制数字( 0-9 和 A-F )。其中,A-F 依次代表 10−15。输出描述:在一行上输出一个整数,代表对应的十进制数。对于给定的十六进制数,输出其对应的十进制表示。

2025-03-17 14:28:45 125

原创 2.明明的随机数(map)

输入描述:第一行输入一个整数 ,代表明明生成的数字个数。此后 n 行,第 i 行输入一个整数 ,代表明明生成的随机整数。输出描述:输出若干行,每行输出一个整数,代表输入数据排序后的结果。第一行输出最小的数字。∙删去重复的数字,即相同的数字只保留一个,把其余相同的数去掉;∙然后再把这些数从小到大排序,按照排好的顺序输出。你只需要输出最终的排序结果。

2025-03-17 14:23:30 280

原创 1.汽水瓶(简单逻辑)

输入描述 在一行上输入一个整数代表小张手上的空汽水瓶数量。特别地,输入0 代表输入结束,您只需要立即退出,不需要针对这种情况进行处理。输出描述:对于每一组测试数据,新起一行。输出一个整数,代表小张最多可以喝到的汽水数量。某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。小张手上有 𝑛n 个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。

2025-03-17 14:19:47 108

原创 E1-最远距离(stl使用)

给定一个数组,请你找出数组中相同元素之间的最远距离。若数组中不存在相同元素,则输出 null。输入一个数组,数组长度不超过 10000。索引0的元素和索引6的元素相同,距离 6。索引1的元素和索引7的元素相同,距离 6。输出数组中相同元素的最远距离。

2025-03-16 17:44:26 365

原创 E1-货仓选址问题(求中位数)

假设在一条数轴上有多个商店,需要在数轴上建立一个货仓,使得货仓到每家商店的距离之和最小。输入一个数组,数组元素是各个商店的位置。若有多个,则从小到大输出。请输出货仓的选值位置。

2025-03-16 17:33:53 222

原创 F4拉力赛(滑动窗口)

第一行输入一个数组,数组元素是环形公路上的广告牌编号,数组头尾元素可以认为相邻。数组长度最大 1000000。数组元素是正整数不大于100。F4拉力赛在一个环形公路上举行,主办方为了拉来更多赞助,在环形公路每间隔一米就设立一块广告牌。假设赛车的速度为 x 米/秒,请问赛车在一秒内经过最多数量的广告牌编号是什么?第二行输入赛车速度 x 米/秒。用例保证 x 不大于数组长度。若有多个最多数量的广告牌编号,则输出最小的。请输出赛车一秒内经过最多数量的广告牌编号。

2025-03-15 20:48:30 391

原创 E1-15.智能成绩表(自定义排序)

第 3 行开始的 n 行,每行包含一个学生的姓名和该生 m 个科目的成绩(空格隔开)输出一行,按成绩排序后的学生名字,空格隔开。成绩相同的按照学生姓名字典顺序排序。小明来到某学校当老师,需要将学生按考试总分或单科分数进行排名,你能帮帮他吗?按shuxue成绩排名,依次是xiaohua、fangfang、minmin。第n+2行,输入用作排名的科目名称。若科目不存在,则按总分进行排序。第 1 行输入两个整数,学生人数 n 和科目数量 m。第 2 行输入 m 个科目名称,彼此之间用空格隔开。

2025-03-11 20:13:35 328

原创 E1-92.MVP争夺战(dfs)

在星球争霸篮球赛对抗赛中,最大的宇宙战队希望每个人都能拿到MVP,MVP的条件是单场最高分得分获得者。可以并列所以宇宙战队决定在比赛中尽可能让更多队员上场,并且让所有得分的选手得分都相同,然而比赛过程中的每1分钟的得分都只能由某一个人包揽。输入第一行为一个数字 t ,表示为有得分的分钟数。输出有得分的队员都是MVP时,最少得MVP得分。第二行为 t 个数字,代表每一分钟的得分 p,样例解释 一共 4 人得分,分别都是 6 分。// ps: 目前还有 三个样例爆了。

2025-03-11 20:04:24 226

原创 E1-106.租车骑绿道(贪心)

部门组织绿岛骑行团建活动。租用公共双人自行车,每辆自行车最多坐。给出部门每个人的体重,请问最多需要租用多少双人自行车。个数字,代表每个人的体重,体重都小于等于自行车限重。,分别代表自行车限重,部门总人数。最小需要的双人自行车数量。

2025-03-10 16:34:37 398

原创 E2-76.不含101的数(数位DP)

区间 [1,10] 内, 5 的二进制表示为 101 ,10的二进制表示为 1010 ,因此区间 [ 1 , 10 ] 内有 10−2=8 个不含 101的数。区间 [10,20] 内,满足条件的数字有 [12,14,15,16,17,18,19] 因此答案为 7。的数,也就是:将数字用二进制表示,不能出现。小明在学习二进制时,发现了一类不含。输出的唯一一行包含一个整数,表示在。,请问这个区间包含了多少个不含。输入的唯一一行包含两个正整数。区间内一共有几个不含。现在给定一个整数区间。

2025-03-10 16:22:05 361

原创 E1-110.完美走位(滑动窗口)

假设玩家每按动一次键盘,游戏任务会向某个方向移动一步,如果玩家在操作一定次数的键盘并且各个方向的步数相同时,此时游戏任务必定会回到原点,则称此次走位为完美走位。),请通过更换其中一段连续走位的方式使得原走位能够变成一个完美走位。其中待更换的连续走位可以是相同长度的任何走位。对每个可能的窗口,检查其是否能够通过修改字符使得每个字符的出现次数变得平衡。:如果当前窗口满足条件,计算窗口的大小,并更新最小窗口大小。请返回待更换的连续走位的最小可能长度。输出为待更换的连续走位的最小可能长度。

2025-03-10 15:50:54 701

原创 E1-95字符串重新排序

1、单词内部调整:对每个单词字母重新按字典序排序。请输出处理后的字符串,每个单词以一个空格分隔。1)统计每个单词出现的次数,并按次数降序排列。输出处理后的字符串,每个单词以一个空格分隔。3)次数和单词长度均相同,按字典升序排列。包括以空格分隔的若干个单词,请对。2)次数相同,按单词长度升序排列。

2025-03-10 15:31:36 170

原创 E1-68.寻找链表的中间结点(快慢指针)

中间结点保存的数据。如果有两个中间结点,则输出第二个中间结点保存的数据。是该结点保存的整数数据(0 ≤ Data ≤ 10^8),如果有两个中间结点,则输出第二个中间结点保存的数据。第一行给出链表首结点的地址、结点总个数正整数。不会成环,但会存在部分输入结点不属于链表。对每个测试用例,在一行中输出。已确保输入的结点所构成的链表。中间结点保存的数据。

2025-03-10 15:22:56 279

原创 E2-8.字符串拼接(回溯)

给定 M(0 < M ≤ 30)个字符(a-z),从中取出任意字符(每个字符只能用一次)拼接成长度为 N(0 < N ≤ 5)的字符串,要求相同的字符不能相邻,计算出给定的字符列表能拼接出多少种满足条件的字符串,给定的字符为a,b,c,结果字符串长度为1,可以拼接成a,b,c,共3种。给定的字符为dde,结果字符串长度为2,可以拼接成de,ed,共2种。给定的字符列表和结果字符串长度,中间使用空格(" ")拼接。输入非法或者无法拼接出满足条件的字符串则返回0。满足条件的字符串个数。

2025-03-08 16:05:34 352

原创 E2-17.数字游戏(前缀和)

第一组小明牌的数字为7,再发了6张牌。第1、2两张牌教字和为14,可以整除7,输出1,第二组小明牌的教字为11,再发了10张牌,这10张牌数字和为10,无法整除11,输出0。需要小明判断,后n张牌中,是否存在连续的若干张牌,其和可以整除小明手中牌上的数字。对每组输入,如果存在满足条件的连续若干张牌,则输出1;输入数据有多组,每组输入数据有两行,输入到文件结尾结束。第二行有n个数,代表后续发的n张牌上的数字,以空格隔开。第一张给小明,后n张按照发牌顺序排成连续的一行。系统发1+n张牌,每张牌上有一个整数。

2025-03-08 15:42:20 167

原创 E2-28.火锅(贪心)

入职后,导师会请你吃饭,你选择了火锅。火锅里会在不同时间下很多菜。不同食材要煮不同的时间,才能变得刚好合适。你希望吃到最多的刚好合适的菜,但你的手速不够快,用m代表手速,每次下手捞菜后至少要过m秒才能再捞(每次只能捞一个)。那么用最合理的策略,最多能吃到多少刚好合适的菜?

2025-03-07 16:27:03 291

原创 E2-9.模拟目录管理功能

在根目录创建一个abc的目录并进入abc目录中查看当前目录路径,输出当前路径/abc/。实现一个模拟目录管理功能的软件,输入一个命令序列,输出最后一条命令运行结果。命令行数限制100行以内,目录名称限制10个字符以内。输入 N 行字符串,每一行字符串是一条命令。输出最后一条命令运行结果字符串。

2025-03-07 15:59:33 397

原创 E2-13.找单词(dfs)

输出一个位置下标字符串,拼接格式为:第1个字符行下标+”,”+第1个字符列下标+”,”+第2个字符行下标+”,”+第2个字符列下标…+”,”+第N个字符行下标+”,”+第N个字符列下标。给一个字符串和一个二维字符数组,如果该字符串存在于该数组中,则按字符串的字符顺序输出字符串每个字符所在单元格的位置下标字符串,如果找不到返回字符串“N”。ACCESS分别对应二维数组的[0,0] [0,1] [0,2] [1,2] [2,2] [2,3]下标位置。第N+2行为待查找的字符串,由大写字符组成。

2025-03-06 17:05:16 226

原创 E2-6.项目排期(二分 回溯)

共有两位员工,其中一位分配需求 6 2 7 7 3 2 1 共需要28天完成,另一位分配需求 9 3 11 4 共需要27天完成,故完成所有工作至少需要28天。项目组共有 N 个开发人员,项目经理接到了 M 个独立的需求,每个需求的工作量不同,且每个需求只能由一个开发人员独立完成,不能多人合作。假定各个需求直接无任何先后依赖关系,请设计算法帮助项目经理进行工作安排,使整个项目能用最少的时间交付。第一行输入为 M 个需求的工作量,单位为天,用逗号隔开。第二行输入为项目组人员数量N。最快完成所有工作的天数。

2025-03-06 16:39:49 256

原创 E2-5.跳格子3(双端队列)

输出最大得分数,小明从起点score[0]开始跳,第一次跳score[1],第二次跳到score[3],第三次跳到score[5],因此得到的最大的得分是score[0] + score[1] + score[3] + score[5] = 14。从起点score[0]开始,每次最大的步长为k,请你返回小明跳到终点 score[n-1] 时,能得到的最大得分。每个格子上有特定的分数 score = [1, -1, -6, 7, -17, 7],第二行输入每个格子的分数 score[i]

2025-03-06 16:03:23 249

原创 E2-3.二叉树计算

左子树表示该节点左侧叶子节点为根节点的一颗新树;右子树表示该节点右侧叶子节点为根节点的一颗新树。请由该二叉树生成一个新的二叉树,它满足其树中的每个节点将包含原始树中的左子树和右子树的和。2行整数,第1行表示二叉树的中序遍历,第2行表示二叉树的前序遍历,以空格分割。1行整数,表示求和树的中序遍历,以空格分割。

2025-03-06 15:47:23 276

原创 E2-7.跳马(BFS)

注:允许不同的马在跳的过程中跳到同一位置,坐标为(x,y)的马跳一次可以跳到的坐标为:(x+1, y+2),(x+1, y-2),(x+2, y+1),(x+2, y-1),(x-1, y+2),(x-1, y-2),(x-2, y+1),(x-2, y-1),的格点上,但是不可以超出棋盘范围。接下来输入 m 行 n 列的网格图棋盘,如果第 i 行,第 j 列的元素为 "." ,代表此格点没有棋子,如果为数字 k(1 ≤ k ≤ 9),代表此格点存在等级为 k 的“马”只有一匹马,不需要跳动。

2025-03-05 17:24:37 748

原创 E2-2.电脑病毒感染(Dijkstra)

一个局域网内有很多台电脑,分别标注为 0 ~ N-1 的数字。相连接的电脑距离不一样,所以感染时间不一样,感染时间用 t 表示。如图:path[i] = {i, j, t} 表示:电脑 i->j,电脑 i 上的病毒感染 j,需要时间 t。其中网络内一台电脑被病毒感染,求其感染网络内所有的电脑最少需要多长时间。如果最后有电脑不会感染,则返回-1。给定一个数组 times 表示一台电脑把相邻电脑感染所用的时间。第一个参数:局域网内电脑个数N,1 ≤ N ≤ 200;第三个 2 1 1 表示2->1时间为1。

2025-03-05 16:59:14 229

原创 E2-1.爱吃蟠桃的孙悟空(二分)

孙悟空可以决定他吃蟠桃的速度K(个/小时),每个小时选一颗桃树,并从树上吃掉 K 个,如果树上的桃子少于 K 个,则全部吃掉,并且这一小时剩余的时间里不再吃桃。已知蟠桃园有 N 棵桃树,每颗树上都有桃子,守卫将在 H 小时后回来。其中数字通过空格分割,N、H为正整数,每颗树上都有蟠桃,且 0 < N < 10000,0 < H < 10000。请返回孙悟空可以在 H 小时内吃掉所有桃子的最小速度 K(K为整数)。第一行输入为 N 个数字,N 表示桃树的数量,这 N 个数字表示每颗桃树上蟠桃的数量。

2025-03-05 16:45:41 243

原创 E1-9.字符串分割(字符串处理)

给定一个非空字符串S,其被N个‘-’分隔成N+1的子串,给定正整数K,要求除第一个子串外,其余的子串每K个字符组成新的子串,并用‘-’分隔。反之,如果它含有的大写字母比小写字母多,则将这个子串的所有小写字母转换为大写字母;大小写字母的数量相等时,不做转换。对于新组成的每一个子串,如果它含有的小写字母比大写字母多,则将这个子串的所有大写字母转换为小写字母;输入为两行,第一行为参数K,第二行为字符串S。输出转换后的字符串。

2025-03-04 21:18:49 264

原创 E1-8.APP 防沉迷系统(逻辑思维)

题目具体见:手机App防沉迷系统 - 题目详情 - Hydro。

2025-03-04 20:27:30 186

原创 E1-3.靠谱的车(按位处理)

程序员小明打了一辆出租车去上班。出于职业敏感,他注意到这辆出租车的计费表有点问题,总是偏大。出租车司机解释说他不喜欢数字4,所以改装了计费表,任何数字位置遇到数字4就直接跳过,其余功能都正常。给出计费表的表面读数,返回实际产生的费用。

2025-03-03 21:28:57 334

原创 E1-7.boss的收入(BFS)

分销关系和收入:[[分销id 上级分销id 收入], [分销id 上级分销id 收入], [分销id 上级分销id 收入]]一个XX产品行销总公司,只有一个boss,其有若干一级分销,一级分销又有若干二级分销,每个分销只有唯一的上级分销。规定,每个月,下级分销需要将自己的总收入(自己的+下级上交的)每满100元上交15元给自己的上级。现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss的收入。给定的输入数据都是合法的,不存在环路,重复的。分销ID 上级分销ID 收入。

2025-03-03 21:11:05 471

原创 E1-1.流浪地球(逻辑)

地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”。当然最终所有的发动机都会被启动。哪些发动机最晚被启动呢?流浪地球计划在赤道上均匀部署了 N 个转向发动机,按位置顺序编号为 0 ~ N。接下来共 E 行,每行都是两个数字 T 和 P,中间有空格。第二行 N 个数字,中间有空格,以回车结束。第一行两个数字 N 和 E,中间有空格。第一行一个数字 N, 以回车结束。

2025-03-03 20:06:25 194

原创 餐馆(二分贪心)

题目:某餐馆有n张桌子,每张桌子能容纳的最大人数为a;有m批客人,每批客人有两个参数:b人数,c预计消费金额数。在不允许拼桌的情况下,请选择其中一部分客人,使得总预计的消费金额最大。第一行输入n m,即桌子的个数和客人的批数(1<=n<=50000;1<=m<=50000)接下来m行输入:b c,即每批客人的人数和预计消费金额。第二行是n个a,即每张桌子能容纳的客人数。输出:一个整数,即总预计消费金额。输入:总共输入m+2行。

2025-03-02 21:21:56 163

原创 华为OD算法真题开练!!!

【代码】华为OD算法真题开练!!!

2025-02-26 21:51:23 130

原创 字符串————最小表示法

如果 s[i+k]>s[j+k] 则表示并非最小,此时就需要跳转到 i+k 的下一个位置,对于 j+k 来讲亦然。)的算法,便是逐位枚举

2023-09-08 17:25:56 193 1

原创 F - Endless Walk(判断进入循环的点)

一个点可以走无限步,需要走进一个环才行,判断图的环,可以想到用拓扑,但是这题需要小小的处理一下更好写代码,拓扑进去的点构成的有向无环图,正向建图获得的是环上的点,那我们可以反着来,反向建图,取到的便是环。给定一个有向图 G,包含 n 个节点和 m 条边,节点分别标记为 1,2,…现在,请你计算有多少个节点满足:从该节点出发,沿着有向边不断走,能够不重不漏地经过无限多个节点。接下来 m 行,每行包含两个整数u,i,vi​,表示存在一条从ui​ 到 vi​ 的有向边。输入格式 第一行包含两个整数 n,m。

2023-04-26 06:00:00 168

原创 [POJ1354D]Multiset(权值线段树)

例如,如果 multiset 包含元素 1、4、2、1、4、5 和 7,并且 k=3,则必须在 [1,1,2,4,4,5,7] 中找到第 3 个元素,即 2。如果 ki

2023-04-20 13:37:37 148

原创 CF442- Div. 2- E.Danil and a Part-time Job(线段树+懒标记)

有一个n个顶点的无向图,给出每个点为一个灯的初始状态是开着或者关闭,0 和1表示,每次询问 把指定点的子树上的所有灯关掉或者打开 也就是01 的异或操作,或者询问指定点的子树的所有开着的灯。对这个无向图进行 dfs 转化,将其转化为01的区间查询问题,然后再用一个有懒标记add的线段树,进行更新,查询操作。add 标记点前区间的标记 对1 不断异或 当查询到区间时释放标记,递归查询,最后还原表标记。push_down 向下取值 push_up向上回执值。sum表示当前点子树亮着的灯的数量。

2023-04-17 19:15:06 146

原创 abc-269 G - Reversible Cards 2

喵喵的转化为01背包问题,将该模型转化成一个容量为s的背包,s为最开始正面朝上数的和,有N 个物品,每个物品的体积为b i − a i ,代价为1,请你求出如何用最小的代价来填满背包。同时去掉ai==bi的情况。这样就把01 0101背包转化成了多重背包。

2023-04-14 22:25:44 106

空空如也

空空如也

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

TA关注的人

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