- 博客(41)
- 收藏
- 关注
原创 linux基本命令
三位三组,表示文件所有者 文件所属组 其他用户 的权限。如果文件已经存在,则改变这个文件的最后修改日期。用于将一个命令的输出直接作为另一个命令的输入。连接并显示指定的一个和多个文件的有关信息。为某一个文件在另外一个位置建立一个符号连接。显示字符串,变量等信息到默认输出终端。比较两个不同的文件,并生成补丁文件。which查看可执行文件位置。whereis 查看文件位置。将补丁文件应用到现有代码上。在指定目录中搜索文件。执行(目录表示进入)
2024-10-31 16:30:50
556
原创 19. 填坑Ⅱ
emmm,还是北湖深坑,不用惊喜,不用意外。我们继续用石头填!北湖的地面依旧是一维的,每一块宽度都为1,高度是非负整数,用一个数组来表示。还是提供不限量的 1 * 2 规格的石头。但是这一次是 DarkDawn 来填坑,他有很强烈的强迫症,所有的石头只能水平摆放(宽为2,高为1)。问这样是否可以将北湖填平。(所有地面到达同一高度即为填平)
2024-07-25 12:20:29
362
原创 18. 填坑Ⅰ
又是北湖深坑,惊不惊喜,意不意外?!Roark 觉得用水填湖太没意思了,用石头填坑多有意思。假设北湖的地面还是一维的,每一块宽度都为1,高度是非负整数,用一个数组来表示。现提供不限量的 1 乘号 2 规格的石头,问是否可以将北湖填平。(所有地面到达同一高度即为填平)注:石头只能水平或垂直填放。
2024-07-24 10:04:38
504
原创 30. 有一个人前来买瓜
可以使用 dp[j][k] 储存当质量为j且成熟度为k时的金粒,(与空间优化后的背包同理,质量和成熟度需要从大到小遍历,防止覆盖数据)。接下来n行,每行三个整数,第i行的三个整数为i,vi,gi(1≤wi,vi,gi≤100),分别代表第i个瓜的重量,成熟度和价值。输出一共有q行,每行一个整数,分别代表每组询问的最大金粒子数总和,若无合法的买法则输出-1。虽然小军的钱是无限的,但他的电动车载重是有限的,因此他不能买总重量超过W的瓜。因此,当小军买的瓜的总成熟度小于V时,YHW并不会把瓜卖给他。
2024-07-21 19:31:09
460
原创 29. 一道简单背包题
龙神有很多背包,每一个背包都有一个容积。但是这些背包的容积都恰好是一个数字$V$的整数倍,比如$V$,$2V$等等。并且对于任意$k \geq 1$,容积为$k \times V$的背包都存在。龙神有一些物品要装进背包,第$i$ 个物品占据的体积$p_i$。现在,龙神想选出一些物品,使得存在一个背包可以恰好放下这些物品,并且这个背包放满。龙神想知道这样的取法有多少个,请你帮他算一算吧?由于取法很多,你只需要输出取法的末七位数,没有前导零,即可(即对10000000取模)。
2024-07-11 17:11:15
1186
原创 28.考试
小学期马上就要结束了,为了检验大家的学习成果,老师进行了一次考试。然而小徐前两周半都忙于练习篮球,几乎没有学习,因此考试时很可能做不完所有题目。但小徐仍然想要拿到尽可能高的分数,因此在做题时需要合理做出取舍。已知考试时间为 分钟,小徐希望在不超时的情况下,考出最高的分数。表示考试时长为j时前i道题目可以取得的最高分。题有时间完成,我们有两种选择,做或不做择其优。道试题用时为, 该试题的”性价比”为。的题目的基本数据,每行有2个非负整数。题进行作答,则所求的分数之和为。表示小徐做出该题目的所用时间,
2024-03-01 10:25:41
893
原创 27. 方向标
当时写了个 sum += dp[i - 1][k] % MOD;(由此我们可以确定箭头尾部的最大坐标head的最大值,有些同学说没有给出范围,但实际可以自己找出来。使用dp[i][j]表示第i个箭头尾部在j时的方案数。初始化dp[1][a[0]]=1.看箭头朝向,上右下左,从j+1累加到max;上左下右,从1到j-1。,此时i尾和i-1尾必须相连,即dp[i][j]=dp[i-1][j]外层循环从第2个箭头开始,内层循环从1到max。大家可以画几张图方便理解。1.给定了最底箭头的的尾和所有箭头的头。
2024-02-19 10:24:16
810
原创 git入门
git 是分布式版本控制系统对于一个项目,有不同版本,可以记录每次改动,可以有不同分支方便回退、协作等忽略操作系统自动生成的文件,比如缩略图等;忽略通过另一个文件自动生成的中间文件,比如Java编译产生的.class文件;忽略带有敏感信息的配置文件,比如存放口令的配置文件。在工作区根目录创建.gitignore文件,写入要忽略的文件名。不需要从头写.gitignore文件。所有配置文件可以直接在线浏览:https://github.com/github/gitignore. 组合即可。
2024-02-19 10:17:09
1867
原创 26.篮球练习
一起训练的还有场上的防守队员小彩,其位于C点。已知小徐行动时只能向右或向下前进,且当小徐相对于小彩的位置为Pi(i = 1,2…现在要求你计算小徐从A点到达B点且不被抢断的路径条数。假设小彩的位置是固定不动的,并不是小徐走一步小彩走一步。其中A点(0,0)为小徐的起始位置,B点(n,m)为小徐想要到达的位置。对于全部的数据,1≤n,m≤20,0≤ C点的横纵坐标 ≤20。练习场地可由如下所示的网格图表示,图中的位置可用坐标表示。一行四个正整数,分别表示B点坐标和C点坐标。,能到达就是1,到不了就是0。
2024-02-12 10:00:00
883
原创 25.进圈
龙龙最近迷上了一款名叫 PUBG(PLAYERUNKNOWN’S BATTLEGROUNDS)的手游,那是一款关乎生存挑战的 RPG 逃亡游戏。龙龙只能移动在允许行走的沙地上,同时每一时刻,龙龙只能朝着当前位置周围的上、下、左、右四个方向移动。同时因为龙龙使用了能量饮料,毒圈快要来啦,请你帮龙龙尽快安排一下可行的路线,使得它能够以最短的时间顺利进圈。进圈最少需要的时间(分钟),如果龙龙最终不能进圈,则请输出。由空格间隔开,表示龙龙的初始位置和目标位置。,这表示这个格点是障碍区,不能行走,也可能是。
2024-02-06 11:45:17
990
原创 23.带旋转的数独游戏
选择一个 的小区域并顺时针旋转 度。周老师回来发现他拼好的数独板被打乱了,开始挠头,你能帮他以最小的步数恢复原样吗?请注意选择要旋转的方块不能跨越任何小区域,也就是说必须选择一块完整的小区域旋转。小区域的定义在上面, 的网格被分成 个小区域。接下来每组数据输入一个 的数独图,表示被龙龙打乱后的数独面板。接下来输出 行,每行两个数,表示逆时针旋转一次第行第列的小矩阵。在这个问题上,让我们关注 网格的拼图,其中包含 个区域。目标是用十六进制数字填充整个网格,即 ,以便每列,每行和每个区域包含所有十六进制数字。
2023-12-17 23:09:43
395
原创 24.绳子切割
有N条绳子,它们的长度分别为Li,Li都是正整数。如果从它们中切割出K条长度相同的绳子(绳子的长度为整数),这K条绳子每条最长能有多长?
2023-12-17 23:09:05
407
原创 22.地下城与勇士
Description龙神觉得无聊于是来到了地下城,这里是一个巨大的迷宫,有一些可以通行的路、一些不可以通行的墙,还有一些怪物。虽然龙神可以轻易地干掉这些怪物,但他觉得这样就太没意思了,他观察到这些怪物每 秒会消失一次(例如 时,则第 秒怪物是消失的),每一秒龙神可以选择向上下左右行走一步(不能在原地不动)。接下来的 行代表迷宫,.表示可以通行的路,#表示墙,*表示怪物,S表示起点,E代表出口。Output输出一个整数,表示龙神走出地下城迷宫的最短时间,如果龙神不能走出迷宫则输出-1。
2023-12-17 23:07:25
240
原创 21.成语接龙
个成语,成语中的四个汉字都用一个1000000以内的正整数来表示。现在小张的同学为了考验他给出了他一个成语做开头和一个成语做结尾,如果小张能通过成语接龙的方式说到结尾的成语,他就能够成功完成游戏。小张非常喜欢与朋友们玩成语接龙的游戏,但是作为“文化沙漠”的小张,成语的储备量有些不足。三个成语分别是(1,2,3,4)(4,5,6,7)(7,8,9,10)行,每行4个1000000以内的正整数,表示一个成语。下一行4个1000000以内的正整数,表示开始成语。保证开始成语和结束成语在小张的成语储备之中。
2023-12-10 23:55:42
351
原创 17.看楼房
于是他找到了一个楼房从左到右排成一排的小区,这个小区一共有 n 栋楼房,每个楼房有一个颜色 ci 和一个高度 hi。小张调查的内容为每次他站在第 i 栋楼和第 i+1 栋楼之间向左看,他记录下此时他看到的楼房颜色数作为他的调查结果。如果比栈顶高,则弹出栈顶,同时栈顶颜色count0,ans--;每组数据输出 n 个数,第 i 个数表示他站在第 i 栋楼和第 i+1 栋楼之间向左看,能够看到的楼房颜色数。在从左向右看楼房的时候,左边较矮的楼房会被右边较高的楼房挡住。第二行 n 个数,表示每个楼房的颜色。
2023-12-06 15:31:57
961
1
原创 16.括号匹配
括号序列是由左括号“(”和右括号“)”组成的非空序列。比如“()”、“(())()”、“(()())”、“(()(()))”、“()()()”都是合法的,而“)”、“(”、“(()”、“(()))(”都是非法的。接下来 行,每行输入一个只由“(”和”)“构成的字符串。(每一个括号序列只能在一对中出现)接完水回来再看了看新题,开始挠头了,快帮帮他!意识到他是在暗示这道题太水了,于是立刻把题改了改,增加了一、、难度。第一组用例可以组成2对合法括号序列,分别是“(( )())”、“( )”。
2023-12-05 22:54:33
328
原创 15.卡牌游戏
小张在玩一种卡牌游戏,牌组由 2n 张牌组成,其中 n 张上写有数字 1…现在牌组经过随机打乱后,小张拿走其中 n 张牌作为手牌,其余 n 张牌作为牌堆。第三行 n 个数,表示牌堆,数组从左向右的顺序表示牌堆自顶向下的顺序。每一次操作,小张选择任意一张手牌放到牌堆底,并将牌堆顶的牌放入手牌。他想知道最少进行几次操作,使得牌堆自顶向下的牌依次为 1…小张想经过若干次如下操作使得牌堆自顶向下的牌依次为 1…第二行 n 个数,表示小张手中的牌。一个整数,表示最少执行的操作数。n 张上全部是数字 0。
2023-11-29 23:31:47
175
1
原创 14.水晶球
同时亚瑟斯有一种魔法,如果这两块长方形水晶石在某一个面能够完美的契合在一起(完美的契合是指这两个长方形面全等),那么可以将它们融合成一块完整的大石头,如果真的实现的话,那么久莲就可能打磨出更大的水晶球啦!如果 k=2 ,则请输出两个正整数 x,y(用空格间隔),表示久莲希望亚瑟斯帮她将编号为x 和 y的水晶石融合成一块更大的水晶石,并选择用这块水晶石来打磨加工。对于样例,如果久莲选择第六个水晶球,那么她可以打磨成半径为 2.5 的水晶球,这是最优的选择。
2023-11-28 21:37:41
68
原创 13.搬砖
本题实际上是求逆序对的个数,使用冒泡排序显然会超时。在这里用归并排序来求。在合并的时候出现a[i] > a[j](前面小于后面)即出现逆序。且由于 a[i+1] 到 a[mid] 大于 a[i] 的,它们也和 a[j] 构成逆序对。小张在暑假时间来到工地搬砖挣钱。包工头交给他一项艰巨的任务,将一排砖头按照从低到高的顺序排好。可是小张的力量有限,每次只能交换相邻的两块砖头,请问他最少交换几次能够完成任务?一个整数,表示最少交换几次能够完成任务。
2023-11-27 20:56:00
526
1
原创 12.任务安排
现在他手头有n项任务,每项任务都有一个开始时间 si 和结束时间 ei。要想完成一个任务必须从开始时间做到结束时间,并且同一时间小张只能进行一项任务。小张想知道他最多可以完成几项任务。初始话end=0.然后按结束时间递增,每次比较开始时间是否大等end,如果是,ans+1,同时end更新为本次结束时间;本题中,其实真正重要的是结束时间,而开始时间、持续时间都不能起决定作用。即使开始早,如果要做很久也不值得。一行一个整数,表示小张最多可以完成几项任务。表示任务的开始时间和结束时间。表示小张手头任务的个数。
2023-11-27 20:47:20
130
1
原创 矩阵连乘问题——动态规划
给定n个矩阵 {A,A,…,A} ,其中A与A是可乘的(i=1,2,…,n-1)。由于矩阵乘法满足结合律,所以它们的连乘积 AA…A有不同的计算次序。不同计算次序需要的乘法次数不同,求使乘法次数最少的计算次序。
2023-11-26 22:03:08
1218
1
原创 11.排兵布阵
总所周知,韩信是一位神勇的军事家。曼哈顿距离:点 左括号 x 下標 1 逗號 空格 y 下標 1 右括号 和点 左括号 x 下標 2 逗號 空格 y 下標 2 右括号 的曼哈顿距离是 竖线 x 下標 1 減 x 下標 2 竖线 加 竖线 y 下標 1 減 y 下標 2 竖线。接下来 n 行,每行输入两个整数 x 下標 i 逗號 空格 y 下標 i 空格 左括号 負 10 的 9 次方 小於等於 x 下標 i 逗號 空格 y 下標 i 小於等於 10 的 9 次方 右括号 表示第 i 名士兵帐篷的坐标。
2023-11-26 16:15:51
133
1
原创 10.肥宅快乐串
龙龙进一步研究发现,一个字符串是"肥宅快乐串",当且仅当这个字符串存在至少一个子串是"fattyhappy"。比如"fffffattyhappyyyyy"就有一个"fattyhappy"子串,而"faaaaattyhappy"就没有一个"fattyhappy"子串。现在龙龙看到了好多个字符串,他想对每一个字符串交换恰好一对字符的位置,使得这个字符串变成"肥宅快乐串"。接下来第 2 到第 T 加 1 行,每行输入一个字符串,表示需要你帮忙变成"肥宅快乐串"的原来的字符串,一共有 T 行。第一行一个正整数T;
2023-11-26 16:13:39
112
1
原创 9.解密游戏
每当按下按钮,此按钮的灯以及其上下左右四个方向按钮的灯状态会改变(如果原来灯亮则灯灭,如果原来灯灭则灯亮)。小张是一个密室逃脱爱好者,在密室逃脱的游戏中,你需要解开一系列谜题最终拿到出门的密码。现在小张需要打开一个藏有线索的箱子,但箱子上有下图所示的密码锁。接下来 n 行,每行一个长度为 m 的01字符串,0表示灯初始状态灭,1表示灯初始状态亮。现在小张给你一些密码锁的状态,请你告诉他最少按几次按钮能够把灯全部熄灭。对于这个密码锁,我们可以先按下左上角的按钮,密码锁状态变为下图。测试用例保证一定有解。
2023-11-25 21:25:04
236
原创 8.发言统计
接下来有n行,每行一个字符串s左小括號 1 小於等於 左 絕對值 s 右 絕對值 小於等於 20 右小括號,表示一条发言,发言仅由大小写字母组成且区分大小写。D a r k D a w n是真的很严格,他认为一条发言不超过10个字符是没有营养的,同时如果一条发言在先前出现过一次,也是没有营养的发言。D a r k D a w n很想立刻统计出结果,但他真的太累了,所以请你帮帮忙,帮他统计出结果。第一行一个整数n左括号 1 小於等於 n 小於等於 1000 右括号,表示发言条数。
2023-11-25 21:17:34
103
原创 6.A+B(1)
学过《计算机科学导论》的你应该熟悉“二进制运算”吧?和十进制不同的是:二进制运算“逢二进一”。下面举一个二进制加法的运算实例:11101+ 110--------100011下面请你模拟这个过程。第一行输入一个正整数T ,表示接下来有 T组数据;接下来 T行,每行输入两个二进制串 a和b 中间用空格隔开,保证它们长度 < 1e5 并且没有前导 0。对于每组数据,请按模拟二进制加法,按题目描述的格式输出正确的运算结果,注意换行,没有多余的空格和换行。
2023-11-24 23:18:48
75
1
原创 7.A+B(2)
龙龙觉得之前的二进制加法可能对你来说太简单了,正好你也学完了“字符串处理”专题,那么就来考验一下你对大数加法的熟练程度吧?下面举一个实数加法运算的实例:2.01+ 1.0-------3.01请你模拟这个过程。第一行输入一个表示加数,第二行输入一个实数b 表示被加数,保证输入实数的长度
2023-11-24 23:17:37
65
1
原创 5.北湖深坑
为了简化运算,我们假设北湖的地面是一维的,每一块宽度都为1,高度是非负整数,那么可以用一个数组来表达一块地面。十年前,北湖还只是一个深坑,未完成蓄水工作。为了确保蓄水工作的顺利进行,我们需要对北湖的蓄水量进行粗略估计。本题要求蓄水量,实际就是看每一点左右两侧最大值中较小的,减去自身高度,再求和。接下来,对于每组用例,输入一个正整数 n ,表示地面总宽度为 n。使用了三个数组,分别存储自身高度,左侧最大值,右侧最大值。接下来一行是 n 个数ai,用空格隔开,表示地面高度。
2023-11-23 23:29:37
83
原创 4.北湖挖坑
十一年前,北湖曾经是一片平整的土地,北湖的施工队打算将其挖出深坑,注水造出人工湖。为了简化运算,我们假设北湖的地面是一维的,每一块宽度都为1,高度是非负整数,那么可以用一个数组来表达一块地面。一开始北湖是一片平地,每一块的高度为h。下图是 h=3的情况,用数组表示为[3,3,3,3,3,3,3,3,3,3,3,3]。施工队根据图纸想将其挖成凹凸不平的形状,如下图所示,数组表示为[0,1,0,2,1,0,1,3,2,1,2,1]。施工队有一台挖土机,每一天挖土机可以将连续一段区间挖掉一格土。
2023-11-23 15:13:24
63
原创 3.达拉崩吧的酒宴
很久很久以前,巨龙突然出现,带来灾难带走了公主又消失不见,王国十分危险,世间谁最勇敢,一位勇者赶来大声喊:“我要带上最好的剑,翻过最高的山,闯进最深的森林,把公主带回到面前”……最后,英雄达拉崩巴斑得贝迪卜多比鲁翁,他战胜了巨龙昆图库塔卡提考特苏瓦西拉松,国王把公主米娅莫拉苏娜丹妮谢莉红嫁给了达拉崩巴斑得贝迪卜多比鲁翁。于是国王第二天要在蒙达鲁克硫斯伯古比奇巴勒城举办酒宴,一共准备了 N 桶酒。
2023-11-22 21:21:46
530
原创 2.摘桃子
丹枫花园的果树成熟啦!今年春天果农一共栽了 n颗桃树,已知第 ai颗桃树将会在第 bi天成熟 颗又红油润的水蜜桃。但是因为天气炎热的缘故,水蜜桃太容易坏了,果实只有在刚成熟的当天(第 ai 天)和第二天(第 ai+1 天)才适合采摘,否则将会缩水,即使摘下来也不好吃了。龙龙现在是丹枫花园的果农,但是他并没有特别地强壮,因此他每天的力气只够他采摘 颗桃子。这些摘下来的桃子既可以来自同一颗果树,也可以来自不同的果树。
2023-11-22 20:01:18
68
原创 1. 猜数字看人品
Tom 和 Jerry 做猜数字的游戏,Tom 想一个数字然后让 Jerry 去猜,数字的范围在 1 到 10 之间。第二个表示tom的回答(用-1标记too low,1标记too high,0标记right on)。得到回答为0后,从头开始检查该结果是否和前面的对话矛盾(比较结果和某一轮对话中数字大小是否满足-1或1),输出是否撒谎。对每一次游戏如果 Tom 的回答有自相矛盾的地方,就输出 Tom is dishonest,否则输出 Tom may be honest。
2023-11-21 19:43:28
115
1
原创 用动态规划、矩阵快速幂求解斐波那契数列
(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称“兔子数列”,其数值为:1、1、2、3、5、8、13、21、34……在数学上,这一数列以如下递推的方法定义:F(0)=1,F(1)=1,F(n)=F(n - 1)+F(n - 2)(n≥ 2,n∈ N*)。本文中所用的都是long long,大概在90多会溢出,出现错误。你也可以改成 unsigned long long。
2023-11-21 18:42:33
1456
1
原创 动态规划算法
动态规划算法(英语:Dynamic programming,简称 DP),与分治法类似,其基本思想是。,如果使用分治法可能需要对一些问题进行多次重复计算,耗费的时间可能达到指数级。,当再次需要时查表得到答案,以避免大量重复计算。根据计算最优值时得到的信息构造最优解。找出最优解的性质,并刻画其结构特征。结合这些子问题的解得到原问题的解。将待求解的问题分解成若干子问题。以自底向上的方式计算最优值。
2023-11-20 20:46:01
30
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人