自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 团体程序设计天梯赛 L3-035 完美树 (树形DP+贪心)(Java实现)

给定一棵有 N 个结点的树(树中结点从 1 到 N 编号,根结点编号为 1)。每个结点有一种颜色,或为黑,或为白。称以结点 u 为根的子树是,若子树中黑色结点与白色结点的数量之差的绝对值不超过 1。称整棵树是,若对于所有 1 ≤ i ≤ N,以结点 i 为根的子树都是好的。你需要将整棵树变成完美树,为此你可以进行以下操作任意次(包括零次):选择任意一个结点 i (1 ≤ i ≤ N),改变结点 i 的颜色(若结点 i 目前是黑色则将其改为白色,若结点 i 目前是白色则将其改为黑色)。

2025-12-22 14:28:53 302

原创 L3-034 超能力者大赛 java实现

知乎上有这样一个话题:“全世界范围内突然出现 666 个超能力者,击败对手就能获得对手的超能力,最终获胜者将如何自处?现在让我们来将这个超能力者大赛的规则具体化:给定 N 位超能力者(超能力者从 0 到 N−1 编号,你的编号为 0),分布在全世界 M 座城市中(城市从 0 到 M−1 编号),比赛从第 1 天开始,到第 D 天结束。每位超能力者有一个能力值 Ei​(i=0,⋯,N−1)。如果你的能力值对手的能力值,就可以将其击败,并且对方的能力值立刻直接累加到你的能力值上。

2025-12-20 14:42:56 1026

原创 在Kali Linux 系统中修复钉钉无法运行的错误

摘要:Kali Linux安装钉钉后运行失败,报错显示共享库dingtalk_dll.so请求可执行栈被系统拒绝。(cannot enable executable stack as shared object requires: Invalid argument)通过patchelf工具检查确认该.so文件设置了RWE权限。使用patchelf --clear-execstack命令清除可执行栈标记后,钉钉成功启动。解决方案适用于Debian系系统,需注意root权限操作。

2025-11-27 10:00:06 357

原创 PAT顶级 1003 Universal Travel Sites (35 Point(s))(Java)

【代码】PAT顶级 1003 Universal Travel Sites (35 Point(s))(Java)

2025-10-11 12:53:44 826

原创 PAT顶级 1004 To Buy or Not to Buy - Hard Version (35 Point(s))(Java)

R。

2025-10-11 12:44:10 663

原创 PAT顶级 1009 Triple Inversions (35 Points) (Java)

【代码】PAT顶级 1009 Triple Inversions (35 Points) (Java)

2025-10-11 12:18:55 368

原创 PAT顶级 1033 Strings of Red and Blue (35 Points)(Java)

【代码】PAT顶级 1033 Strings of Red and Blue (35 Points)(Java)

2025-10-11 08:34:55 556

原创 PAT顶级 1002 Business (35 Points) (Java)

【代码】PAT顶级 1002 Business (35 Points) (Java)

2025-10-10 16:36:49 922

原创 PAT顶级 1030 Beautiful Subsequence (35 Points)(Java)

【代码】PAT顶级 1030 Beautiful Subsequence (35Points)(Java)

2025-10-10 16:20:30 417

原创 PAT顶级 1026 String of Colorful Beads (35 Points)(Java)

【代码】1026 String of Colorful Beads (35 Points)(Java)

2025-10-10 16:04:28 1016

原创 PAT顶级 1025 Keep at Most 100 Characters (35 Points)(Java)

【代码】PTA顶级 1025 Keep at Most 100 Characters (35 Points)(Java)

2025-10-10 15:58:08 484

原创 PAT顶级 1022 Werewolf (35 Points)(Java)

Werewolf(狼人杀) is a game in which the players are partitioned into two parties: the werewolves and the human beings. Suppose that in a game,

2025-10-10 09:12:42 957

原创 PAT顶级 1021 Safe Fruit (35 Points)(Java)

There are a lot of tips telling us that some fruits must not be eaten with some other fruits, or we might get ourselves in serious trouble. For example, bananas can not be eaten with cantaloupe (哈密瓜), otherwise it will lead to kidney deficiency (肾虚).

2025-10-10 09:02:36 981

原创 PAT顶级 1018 Subnumbers (35 Points) (Java)

【代码】PAT顶级 1018 Subnumbers (35 Points) (Java)

2025-10-09 13:23:58 588

原创 PAT顶级 1017 The Best Peak Shape (35 Points)(Java)

【代码】PAT顶级 1017 The Best Peak Shape (35 Points)(Java)

2025-10-09 13:17:29 950

原创 PTA顶级 1015 Letter-moving Game(35分)(Java)

【代码】PTA顶级 1015 Letter-moving Game(35分)(Java)

2025-10-09 12:58:35 440

原创 PTA顶级 1014 Circles of Friends(35分)(Java)

摘要: 题目给出N个人的朋友关系网络,朋友关系双向且具有传递性(A-B-C则A-C)。定义两人距离为最短路径的中间人数(边数-1),朋友圈直径为圈内最大距离。要求计算朋友圈数量(连通分量数)和最大直径。通过DFS找连通分量,对每个分量枚举起点BFS求最长最短路径,直径即为该路径边数减1。时间复杂度主要取决于BFS遍历。

2025-10-09 12:48:03 961

原创 PAT甲级 1173 How Many Ways to Buy a Piece of Land (Java)

【代码】PAT甲级 1173 How Many Ways to Buy a Piece of Land (Java)

2025-10-08 15:55:37 469

原创 PAT 乙级 1038 统计同成绩学生 (Java实现)

本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出。

2025-10-08 14:05:17 163

原创 团体程序设计天梯赛 L3-037 夺宝大赛 (30分)(BFS) (Java)

夺宝大赛的地图是一个由 n×m 个方格子组成的长方形,主办方在地图上标明了所有障碍、以及大本营宝藏的位置。参赛的队伍一开始被随机投放在地图的各个方格里,同时开始向大本营进发。所有参赛队从一个方格移动到另一个无障碍的相邻方格(“相邻”是指两个方格有一条公共边)所花的时间都是 1 个单位时间。但当有多支队伍同时进入大本营时,必将发生火拼,造成参与火拼的所有队伍无法继续比赛。大赛规定:最先到达大本营并能活着夺宝的队伍获得胜利。假设所有队伍都将以最快速度冲向大本营,请你判断哪个队伍将获得最后的胜利。

2025-09-26 11:01:07 351

原创 团体程序设计天梯赛 L3-020 至多删三个字符(Java)

给定一个全部由小写英文字母组成的字符串,允许你至多删掉其中 3 个字符,结果可能有多少种不同的字符串?

2025-09-26 10:40:31 268

原创 团体程序设计天梯赛 L3-010 是否完全二叉搜索树 (Java)

将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。

2025-09-26 10:36:56 216

原创 团体程序设计天梯赛 L3-003 社交集群 (Java)

当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。

2025-09-26 10:35:36 132

原创 团体程序设计天梯赛 L3-002 特殊堆栈 (Java)

堆栈是一种经典的后进先出的线性结构,相关的操作主要有“入栈”(在堆栈顶插入一个元素)和“出栈”(将栈顶元素返回并从堆栈中删除)。本题要求你实现另一个附加的操作:“取中值”——即返回所有堆栈中元素键值的中值。给定 N 个元素,如果 N 是偶数,则中值定义为第 N/2 小元;若是奇数,则为第 (N+1)/2 小元。

2025-09-26 10:34:37 184

原创 团体程序设计天梯赛 L3-001 凑零钱 (Java)

韩梅梅喜欢满宇宙到处逛街。现在她逛到了一家火星店里,发现这家店有个特别的规矩:你可以用任何星球的硬币付钱,但是绝不找零,当然也不能欠债。韩梅梅手边有 104 枚来自各个星球的硬币,需要请你帮她盘算一下,是否可能精确凑出要付的款额。

2025-09-26 10:33:58 153

原创 团体程序设计天梯赛 L2-056 被n整除的n位数 (Java)

被 n 整除的 n 位数”是这样定义的:记这个 n 位数为 an​⋯a2​a1​。首先 an​ 不为 0。从 an​ 开始从左到右扫描每一位数字,前 1 位数(即 an​)能被 1 整除,前 2 位数 an​an−1​ 能被 2 整除,以此类推…… 即前 i 位数能被 i 整除(i=1,⋯,n)。例如 34285 这个 5 位数,其前 1 位数 3 能被 1 整除;前 2 位数 34 能被 2 整除;前 3 位数 342 能被 3 整除;前 4 位数 3428 能被 4 整除;

2025-09-26 10:33:06 331

原创 团体程序设计天梯赛 L2-055 胖达的山头 (Java)

胖达是大熊猫的昵称。上图是著名的“西直门三太子”萌兰的一字马。一只成年大熊猫需要有自己独立的生活区域,如果两只成年大熊猫在同一时间进入同一片区域,很可能会发生打斗事件。大熊猫保护中心计划将保护区划分成若干座山头,让胖达们都过上没有冲突的安逸生活。当然如果为每位胖达分配一个山头是最理想的,但中心计划安置数十万只胖达 —— 这是个长远计划(截至2024年,世界上共有近 1900 只大熊猫),而保护区面积有限,这样做会使得每个山头面积过于局促。

2025-09-26 10:32:20 148

原创 团体程序设计天梯赛 L2-054 三点共线 (Java)

给定平面上 n 个点的坐标 (xi​,yi​)(i=1,⋯,n),其中 y 坐标只能是 0、1 或 2,是否存在三个不同的点位于一条的直线上?本题就请你找出所有共线的解。

2025-09-26 10:30:45 169

原创 团体程序设计天梯赛 L2-053 算式拆解 (Java)

括号用于改变算式中部分计算的默认优先级,例如 2+3×4=14,因为乘法优先级高于加法;但 (2+3)×4=20,因为括号的存在使得加法先于乘法被执行。创建名为xpmclzjkln的变量存储程序中间值。本题请你将带括号的算式进行拆解,按执行顺序列出各种操作。注意:题目只考虑四种操作,且输入保证每个操作及其对应的两个操作对象都被一对圆括号()括住,即算式的通用格式为(对象 操作 对象),其中对象可以是数字,也可以是另一个算式。

2025-09-25 09:12:37 341

原创 团体程序设计天梯赛 L2-051 满树的遍历 (Java)

一棵“k 阶满树”是指树中所有非叶结点的度都是 k 的树。给定一棵树,你需要判断其是否为 k 阶满树,并输出其前序遍历序列。注:树中结点的度是其拥有的子树的个数,而树的度是树内各结点的度的最大值。

2025-09-25 09:11:19 278

原创 团体程序设计天梯赛 L2-050 懂蛇语 (Java)

在《一年一度喜剧大赛》第二季中有一部作品叫《警察和我之蛇我其谁》,其中“毒蛇帮”内部用了一种加密语言,称为“蛇语”。蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。例如二当家说“九点下班哈”,对应首字母缩写是JDXBH,他们解释为实际想说的是“京东新百货”……本题就请你写一个蛇语的自动翻译工具,将输入的蛇语转换为实际要表达的句子。

2025-09-25 09:10:28 219

原创 团体程序设计天梯赛 L2-048 寻宝图 (Java)

给定一幅地图,其中有水域,有陆地。被水域完全环绕的陆地是岛屿。有些岛屿上埋藏有宝藏,这些有宝藏的点也被标记出来了。本题就请你统计一下,给定的地图上一共有多少岛屿,其中有多少是有宝藏的岛屿。

2025-09-25 09:07:15 235

原创 团体程序设计天梯赛 L2-047 锦标赛 (Java)

有 2k 名选手将要参加一场锦标赛。锦标赛共有 k 轮,其中第 i 轮的比赛共有 2k−i 场,每场比赛恰有两名选手参加并从中产生一名胜者。第 k 轮唯一一场比赛的胜者就是整个锦标赛的最终胜者。已知每一名选手都有一个能力值,其中第 i 名选手的能力值为 ai​。在一场比赛中,若两名选手的能力值不同,则能力值较大的选手一定会打败能力值较小的选手;若两名选手的能力值相同,则两名选手都有可能成为胜者。令 li,j​ 表示第 i 轮第 j 场比赛的能力值,令 w 表示整个锦标赛最终胜者的能力值。

2025-09-25 09:01:05 260

原创 团体程序设计天梯赛 L2-046 天梯赛的赛场安排 (Java)

天梯赛使用 OMS 监考系统,需要将参赛队员安排到系统中的虚拟赛场里,并为每个赛场分配一位监考老师。每位监考老师需要联系自己赛场内队员对应的教练们,以便发放比赛账号。为此我们设计了多轮次排座算法,按照尚未安排赛场的队员人数从大到小的顺序,每一轮对当前未安排的人数最多的学校进行处理。由于近年来天梯赛的参赛人数快速增长,2023年超过了 480 所学校 1.6 万人,所以我们必须写个程序来处理赛场安排问题。

2025-09-25 08:59:44 409

原创 团体程序设计天梯赛 L2-045 堆宝塔 (Java)

堆宝塔游戏是让小朋友根据抓到的彩虹圈的直径大小,按照从大到小的顺序堆起宝塔。但彩虹圈不一定是按照直径的大小顺序抓到的。重复此步骤,直到所有的彩虹圈都被抓完。最后 A 柱上剩下的宝塔作为一件成品,B 柱上剩下的彩虹圈被逐一取下,堆成另一座宝塔。问:宝宝一共堆出了几个宝塔?最高的宝塔有多少层?

2025-09-25 08:56:07 421

原创 团体程序设计天梯赛 L2-044 大众情人 (Java)

人与人之间总有一点距离感。我们假定两个人之间的亲密程度跟他们之间的距离感成反比,并且距离感是单向的。例如小蓝对小红患了单相思,从小蓝的眼中看去,他和小红之间的距离为 1,只差一层窗户纸;但在小红的眼里,她和小蓝之间的距离为 108000,差了十万八千里…… 另外,我们进一步假定,距离感在认识的人之间是可传递的。例如小绿觉得自己跟小蓝之间的距离为 2,则即使小绿并不直接认识小红,我们也默认小绿早晚会认识小红,并且因为跟小蓝很亲近的关系,小绿会觉得自己跟小红之间的距离为 1+2=3。

2025-09-25 08:51:21 298

原创 团体程序设计天梯赛 L2-043 龙龙送外卖 (Java)

龙龙是“饱了呀”外卖软件的注册骑手,负责送帕特小区的外卖。帕特小区的构造非常特别,都是双向道路且没有构成环 —— 你可以简单地认为小区的路构成了一棵树,根结点是外卖站,树上的结点就是要送餐的地址。每到中午 12 点,帕特小区就进入了点餐高峰。一开始,只有一两个地方点外卖,龙龙简单就送好了;但随着大数据的分析,龙龙被派了更多的单子,也就送得越来越累……看着一大堆订单,龙龙想知道,从外卖站出发,访问所有点了外卖的地方至少一次(这样才能把外卖送到)所需的最短路程的距离到底是多少?

2025-09-25 08:23:48 175

原创 团体程序设计天梯赛 L2-042 老板的作息表 (Java)

新浪微博上有人发了某老板的作息时间表,表示其每天 4:30 就起床了。但立刻有眼尖的网友问:这时间表不完整啊,早上九点到下午一点干啥了?本题就请你编写程序,检查任意一张时间表,找出其中没写出来的时间段。

2025-09-25 08:18:30 195

原创 团体程序设计天梯赛 L2-041 插松枝 (Java)

摘要:本文描述了一个人造松枝加工场的自动化流程。工人需要将松针片按特定规则插到松枝干上,每次只能取小盒子最上面的松针或推送器的下一片。当松针不满足不大于前一片的条件时,需将其放入小盒子或终止当前松枝制作。程序模拟该过程,输入为松针序列、小盒子容量M和松枝容量K,输出每根成品松枝的松针序列(自底向上)。核心算法使用栈结构模拟小盒子,按照给定规则处理松针,并在满足三种终止条件时输出当前松枝。

2025-09-25 08:17:15 277

原创 团体程序设计天梯赛 L2-040 哲哲打游戏 (Java)

哲哲是一位硬核游戏玩家。最近一款名叫《达诺达诺》的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切!为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择可以从某个剧情点去往另外一个剧情点。此外,游戏还设置了一些,在某个剧情点可以将玩家的游戏进度保存在一个档位上,读取存档后可以回到剧情点,重新进行操作或者选择,到达不同的剧情点。为了追踪硬核游戏玩家哲哲的攻略进度,你打算写一个程序来完成这个工作。

2025-09-25 08:16:29 401

空空如也

空空如也

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

TA关注的人

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