- 博客(171)
- 收藏
- 关注
原创 Alice和Bob的爱恨情仇
Bob 和 Alice 最近在学习博弈论,为了学以致用,他们找来了一大堆的小饼干,并通过博弈的方式来吃掉这些小饼干。他们将找来的小饼干分成 nn 堆,每堆小饼干有aia i 个小饼干。他们轮流对这些饼干进行操作,操作规则如下:由 Alice 先手,每次从一堆小饼干中拿出 kmk m 个小饼干( kk 为奇数且m≥0m≥0,且 kmk m 不能超出该堆小饼干的总数)。当一方进行完操作后,如果已经没有剩余的小饼干,则该方获胜,赢得所有的小饼干。
2024-03-14 16:43:21
440
原创 1.5上机实验题--实验二
我们创建了一个最小堆 `minHeap`,通过设置第二个模板参数为 `vector<int>` 来使用默认的容器类型,第三个模板参数 `greater<int>` 则指定了比较函数,使得最小值的元素位于堆顶。在上面的代码中,我们定义了一个无序整数序列 `arr`,并设置了 `n` 表示序列的长度,`k` 表示要求第k小的元素。你可以根据需要修改 `arr`、`n` 和 `k` 的值来验证不同的情况。接着,我们使用 `pop()` 函数将前 k-1 个最小元素移出堆,此时堆顶的元素即为第k小的元素。
2023-10-07 22:58:31
104
原创 1.5 上机实验题--实验一
调用该算法执行10次并求元素的平均比较次数。5. `gmtime()`:将 `time_t` 类型的时间值转换为 `struct tm` 结构体,以协调世界时(UTC)表示。6. `localtime()`:将 `time_t` 类型的时间值转换为 `struct tm` 结构体,以本地时区表示。4. `ctime()`:将 `time_t` 类型的时间值转换为字符串格式,返回一个表示时间的字符串。3. `time()`:用于获取当前时间的秒数,返回一个 `time_t` 类型的值。考虑随机数,调用函数。
2023-10-07 22:43:43
225
原创 超级楼梯
首先包含一个整数 N,表示测试实例的个数,然后是 N 行数据,每行包含一个整数 M (1≤M≤40),表示楼梯的级数。有一个楼梯共 M 级台阶,刚开始时你在第 1 级,若每次只能跨上 1 级或 2 级,要走上第 M 级, 共有多少种走法?对于每个测试实例,请输出不同走法的数量。开始你的任务吧,祝你成功!
2023-09-27 23:15:47
65
原创 Octal Fractions
本关任务:八进制(以 8 为基数)表示的小数可以用十进制精确地表示。例如,八进制的 0.75 表示为十进制的 0.953125(7/8+5/64)。所有在小数点右边的 n 位八进制数可以用不超过在小数点右边的 3n 位的十进制小数来表示。编写一个程序,将 0~1 之间(包含 0 和 1)的八进制小数转换为等同的十进制小数。Dm[10],其中,左式是输入(八进制);右式是等同的十进制值,不能有 0 结尾,即 Dm 不等于 0。程序的输入将由若干八进制数组成,每行一个。dk,其中 di 是八进制数字(0…
2023-09-27 23:15:11
62
原创 算法设计题3--N皇后
当放置完最后一行的皇后后,我们就得到了一个解,并打印出来。在n*n的方格棋盘上,防止n个皇后,要求每个皇后不同行、不同列、不同左右对角线,求出n皇后问题的所有解,并且输入解的个数n。第1个解:(1,2) (2,4) (3,6) (4,1) (5,3) (6,5)第2个解:(1,3) (2,6) (3,2) (4,5) (5,1) (6,4)第3个解:(1,4) (2,1) (3,5) (4,2) (5,6) (6,3)第4个解:(1,5) (2,3) (3,1) (4,6) (5,4) (6,2)
2023-09-22 19:21:18
175
原创 算法设计题2--pow(x,n)
解释:2的-2次方 = 1 / 2的2次方 = 1 / 4 = 0.25。2.实现pow(x,n),即计算x的整数n次幂函数(既,求x的n次方)输入:x = 2.00000,n = 10。输入:x = 2.00000,n = -2。输入:x = 2.10000,n = 3。输出:1024.00000。输出:9.26100。输出:0.25000。要么x不为0,要么n > 0。存在1无法得出0.25。
2023-09-22 16:03:06
48
原创 跳跃
C/C++中,所有超过该限值的数,都会出现溢出,出现warning,但是并不会出现error。如果想表示的整数超过了该限值,可以使用长整型long long 占8字节64位。ans=max(ans,g[i+X[k]][j+Y[k]])表示可以到达此点的所有点权值之和最大值。由题意可知,我们需要求解从(1,1)到(n,m)的权值之和最大的路径。那么,我们可以考虑采用动态规划(DP)进行问题的求解。g[i][j]+=ans表示更新后的该点权值。g[i][j]表示到达此点的最大权值。解法一较为基础,便于理解。
2023-09-21 22:19:36
39
原创 Fourth Point !!
输入的每行给出8个浮点数:首先,给出第一条边的一个端点和另一个端点的(x, y)坐标;然后,给出第二条边的一个端点和另一个端点的(x, y)坐标;所有的坐标均以米为单位,精确到毫米。所有的坐标的值在-10000和+10000之间。对于每行输入,输出平行四边形的第四个点的(x, y)坐标,以米为单位,精确到毫米,用一个空格隔开x和y。给出平行四边形中两条相邻边的端点的(x, y)坐标,请找到第四个点的(x, y)坐标。
2023-08-30 00:02:08
76
原创 Double Queue
银行的年轻管理人员的一项发明让银行服务系统的软件工程师非常吃惊。他们要打破传统,有时,服务台叫具有最低优先级的客户,而不是叫最高优先级的客户。与往常一样,银行的每个客户都用一个正整数K 来标识,在客户到银行办理业务时,他或她会收到一个正整数优先级。的每个请求,您的程序要以标准输出的方式,在单独的一行中输出要服务的客户的标识符。),在列表中不会有其他的请求加入相同的客户或相同的优先级。请您编写一个程序,帮助银行的软件工程师实现所要求的服务策略。客户可以多次办理业务,并且每次的优先级可以不同。
2023-08-29 22:55:35
42
原创 Keywords Search
希望将搜索引擎引入到他的图像检索系统中。每个图像都有一个很长的文字描述,当用户键入一些关键字来查找图像时,系统会将关键字与图像的文字描述进行匹配,并显示出匹配关键字最多的图像。本题要求,给出一个图像的文字描述和一些关键字,请您计算有多少个关键字匹配。输入的第一行给出一个整数,表示有多少个测试用例。现在,搜索引擎已经走进了每个人的生活,比如,大家使用。最后一行是图像的文字描述,长度不超过。输出给出在描述中包含了多少个关键字。,表示关键字的数目;开始你的任务吧,祝你成功!),每个关键字只包含从。
2023-08-29 22:55:20
43
原创 Shortest Prefixes
输出的行数与输入的行数相同。输出的每一行先给出输入对应行中的单词,然后给出一个空格,最后给出唯一(无歧义)标识该单词的最短前缀。在本题中,空串不被视为前缀,但是每个非空字符串都被视为其自身的前缀。在日常语言中,我们会用前缀来缩写单词。在本题中,给出一组单词,请您为每个单词找出能唯一标识该单词的最短前缀。在给出的样例输入中,输入至少有两行,最多不超过1000行。每行给出一个由1到20个小写字母组成的单词。字符串的前缀是从给出的字符串的开头开始的子字符串。开头的其他任何其他词的缩写。开始你的任务吧,祝你成功!
2023-08-29 22:55:07
131
原创 GCD
输入最多会有100行。每行给出一个整数N(1<N<501),N的含义在上面的试题描述中给出。输入以在一行中给出0终止,这个0不用进行处理。对于那些难以理解求和符号的人来说,对于输入的每一行,输出一行,给出相应于N的G值。根据提示,在右侧编辑器补充代码,完成此关。开始你的任务吧,祝你成功!
2023-08-29 22:54:48
37
原创 How Many Knights
国际象棋的棋盘是一个由小方格组成的正方形,马(knight)是国际象棋中的棋子。对于马,每步棋攻击距离其位置两行一列的棋子,或者距离其位置一行两列的棋子。如图 1 所示,标记为 N 的小方格表示马的位置,标记为 X 的小方格表示走一步棋马可以攻击到的小方格。在本题中,给出一个 m 行 n 列的棋盘,请您计算最多能放多少个马,使得这些马彼此之间不会互相攻击?对于每个输入对,输出棋盘的行数和列数,以及最多能放多少个马的个数。输入给出若干对 m 和 n 的值,最后以两个 0 标识输入结束。
2023-08-29 22:24:16
76
原创 放苹果
把 m 个同样的苹果放在 n 个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?用 k 表示不同的分法。5,1,1 和 1,5,1 是同一种分法。对输入的每个测试用例 m 和 n,用一行输出相应的 k。以下每行均包含两个整数 m 和 n,以空格分开,第一行是测试用例的数目 t(
2023-08-29 22:23:24
46
原创 汉诺塔V
用 1, 2, ..., n 表示 n 个盘子,称为 1 号盘,2 号盘, ...。汉诺塔来源于印度传说的一个故事,上帝创造世界时造了三根金刚石柱子,在一根柱子上从下往上按大小顺序摞着 64 片黄金圆盘。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。在移动过程中发现,有的圆盘移动次数多,有的少。给出盘子总数和某个盘子的盘号,请您计算移动该盘子的次数。输入给出多个测试用例,首先输入 t,表示有 t 个测试用例。对于每个测试用例,输出一个数,到达目标时 k 号盘子需要的最少移动数。
2023-08-29 22:22:29
51
原创 Symmetric Order
您在由一群小丑经营的 Albatross Circus Management 工作,您刚写了一个以长度非递减的顺序输出姓名列表的程序(每个姓名至少要和前面的名字一样长)。然后,您的老板不喜欢这样的输出方式,他要求改为看上去对称的输出形式,最短的字符串在顶部和低部,最长的在中间。他的规则是每一对姓名在列表对等的地方,每一对姓名中的第一个在列表的上方。每个集合以一个整数 n 为开始,表示该集合中字符串的个数,每个字符串一行,字符串以长度的非递减顺序排列。每个集合中的字符串至少有一个,至多有 15 个。
2023-08-29 22:21:38
52
原创 Game of Flying Circus
本题设定,如果Asuka和Shion同时触碰浮标,则Asuka得分,并且Asuka还可以与Shion在浮标处格斗。(因为 浮标#1 是起点,所以他们要触碰的第一个浮标是 浮标#2,此后,他们要按序触碰 浮标#3,#4,和#1)。Shion是Speeder选手,他的策略非常简单:沿最短路径触碰浮标#2、#3、#4、#1。:这类选手擅长格斗,他们会尽量通过和对手格斗来得分,因为Fighter的速度比Speeder慢,所以如果对手是一个Speeder,则Fighter很难通过触摸浮标来得分。,表示一个测试用例。
2023-08-29 22:20:14
62
原创 Kind of a Blur
虽然在数学上讲并不精确,但是,一个清晰的图像被模糊化,就是将距离每个像素(包括该像素本身)的某个曼哈顿距离内(小于或等于)的所有像素的值取平均值,赋给这个像素。的实数矩阵,表示图像的去模糊之后的版本。接下来的 H 行给出模糊图像中每个像素的灰度,每行给出 W 个非负实数,实数保留小数点后两位,所有给出的实数值都小于 100。两点之间的曼哈顿距离(也被称为出租车距离)是它们坐标的绝对值的差的总和。每个测试用例 H+1 行,第一行给出三个非负整数,分别表示模糊图像的宽度 W,高度 H,以及模糊距离 D,其中,
2023-08-29 22:19:26
33
原创 Courses
然后,在一个空格之后,给出选修这门课程的Counti位同学,每两个连续值之间由一个空格分隔。输入的第一行给出测试用例的数目。的正整数对同学们进行编号。在连续的测试用例之间没有空行。输入的数据是正确的。对于运算的结果,标准输出。对于每个测试用例,如果可以组成委员会,则在一行上输出“每位同学可以选修零门、一门或多门课程。每个测试用例的第一行给出两个正整数,正整数之间由一个空格分隔:P(接下来的P行按课程顺序描述,从课程。行的开始不能有任何的前导空格。,每一行描述一门课程。开始你的任务吧,祝你成功!
2023-08-28 22:20:00
43
原创 Conference
想在代表团的房间之间建立直接的电话联系,使得每个代表都至少跟对方代表团的一个代表建立联系,在两个代表之间建立联系是他们可以通过电话进行交谈。在会议召开前,选出了 K 对代表。每对代表必须一个是 A 国的,另一个是 B 国的。请您写一个程序,给出M,N,K和K对代表,找到需要的最小连接数目。为了参加即将召开的会议, A 国派出 M 位代表, B 国派出 N 位代表(每一个参加会议的代表至少被包含在某一对中。输入的第一行给出 M,N 和 K。后面的K行每行给出构成一对的两个整数。, B 国的代表编号为。
2023-08-28 22:19:22
43
原创 EarthCup
的数据,也许是因为球队数量太多,几百年来没有发现这种严重的作弊行为。为了检查数据是否被修改,他们开始检查过去的“积分表”。上,每支球队都有一个积分,赢了一场就得一分,输了一场就得零分。为了使比赛结果清楚,规定如果比赛结束时两队打成平手,就进行点球大战,直到有结果为止。对于第二个测试用例,显然不可能所有的球队都赢所有的比赛,所以积分表肯定被篡改,输入的。2045年,世界杯足球赛逐渐被“地球超级杯”所取代(后面,简称为地球杯,”意思是我们无法根据规则构造出每场比赛的结果,使得最后的积分表成立。
2023-08-28 22:18:46
48
原创 Power Network
对于输入的每组测试用例,程序标准输出可以供相应网络使用的最大电量。每个结果是一个完整的值,在一行中输出。输入数据以文件结束终止,所有输入数据是正确的。第一个测试用例给出一个包含 2 个节点的网络,电站 0 的。一个电力网是由节点(发电站,用电场所和变电站)以及连接这些节点的电力传输线组成。输入中有若干组测试用例,每组测试用例相应于一个电力网,首先给出。根据提示,在右侧编辑器补充代码,完成任务描述要求。是网络中消耗的电力,本题要计算。(电力传输线的数目),然后给出。的电力的能力,可以实际产生。
2023-08-28 22:16:51
49
原创 PIGS
Mirko在一家大型养猪场工作,这家养猪场有M间可上锁的猪舍,但Mirko无法对任何一间猪舍上锁,因为他没钥匙。顾客一个接一个地到养猪场来,每个人都有一些猪舍的钥匙,他们要来买一定数量的猪。每天早晨Mirko 所关心的数据是这一天要来养猪场的顾客,以便Mirko做好销售计划,给出要卖的猪的最大数字。确切地讲,过程如下:顾客到养猪场,打开所有他有钥匙的猪舍,Mirko从被打开的猪舍里卖一定数量的猪给顾客,并且如果Mirko需要,他在被打开的猪舍中重新分配剩余的猪。输出的第一行且唯一的一行给出要卖猪的头数。
2023-08-28 22:16:15
34
原创 Sudoku
对于每个测试用例,程序以与输入数据相同的格式输出解决方案。空的方格要按照规则填入数字。如果解决方案不是唯一的,那么程序可以输出其中任何一个。的数字填入空的方格,每个方格填入一个数字,使得在每行、每列和每个。位数字的字符串,对应于这一行中的方格;请您编写一个程序来完成给出的数独游戏。输入首先给出测试用例的数目。数独是一个非常简单的游戏。的数字,其他的方格为空。行,相应于网格的行;根据提示,在右侧编辑器补充代码。的小正方形网格中,所有从。开始你的任务吧,祝你成功!列的正方形网格被分成。
2023-08-28 22:15:14
43
原创 Knight‘s Problem
骑士周游问题,就是一个骑士被放在一个空棋盘上,您要确定骑士是否能访问棋盘上的每个方格一次且仅一次。现在我们考虑骑士周游问题的一个变体。在这个问题中,一个骑士被放置在一个无限的棋盘上,它被限制只能做某些移动。为每个测试用例输出一行,给出一个整数,表示骑士到达目的地所需的最少移动次数。如果骑士无法到达目的地,则输出。本题的目标是使得骑士尽快到达他的目的地(即,尽可能少地移动)。,表示骑士可以进行多少种移动。,表示测试用例的数量。根据提示,在右侧编辑器补充代码。开始你的任务吧,祝你成功!),表示如果骑士站在。
2023-08-28 22:14:12
52
原创 Catch That Cow
已经知道了一头逃跑的母牛的位置,他想立即抓住它。有两种移动的方式:步行和远距离传送。抓到逃跑的母牛所需的最少时间,以分钟为单位。根据提示,在右侧编辑器补充代码。可以在一分钟内从任意一个点。可以在一分钟内从任意一个点。要用多长的时间才能抓住它?在抓它,根本不动,农夫。开始你的任务吧,祝你成功!,母牛在同一数轴上的点。
2023-08-28 22:13:27
30
原创 Knight Moves
个方格的棋盘上找到骑士访问每个方格一次且仅一次的回路。您的朋友认为这个问题最困难的部分是确定两个给定的方格之间骑士移动的最小步数,一旦解决了这个问题,就很容易找到路线。当然您知道反之亦然,所以您要为他写一个解决“困难”部分的程序。请您编写一个程序,输入两个方格。每个测试用例一行,这一行给出由一个空格分隔的两个方格。一个方格表示为一个字符串,由一个表示棋盘的列的字母(您的一位朋友正在研究旅行骑士周游问题()和一个表示棋盘的行的数字(),这个问题是要在给出的。的最短路线上移动的次数。开始你的任务吧,祝你成功!
2023-08-28 22:12:41
37
原创 Eight
合法的值是“R”,“L”,“U”和“D”,分别表示 右,左,上,下。并非所有的拼图都可以被解:在1870年,一个名叫 Sam Loyd 的人士给出了无法解决的拼图,难倒了很多人。事实上,使一个普通的拼图变成为一个无解的拼图,你所要做的,就是交换两个方片(不包括“x”)。本题给出 8 拼图的结构的描述。该描述是方片在它们的初始位置的一个列表,按行从上到下,在一行中从左到右的顺序,给出用从 1 至 8 的数字标识的方片,以及“x”。我们称少了的方片为“x”,拼图的目标是要把这些方片排列好,使得它们的次序如图。
2023-08-28 22:11:33
39
原创 Burger
Ronald McDonald做了10个牛肉汉堡和10个芝士汉堡,当他为孩子们服务时,他先从坐在Bill左边的女孩开始,而Ben坐在Bill的右边。Ronald掷一枚硬币决定这个女孩是吃牛肉汉堡还是芝士汉堡,硬币头像的一面是牛肉汉堡,反面则是芝士汉堡。当Ronald来到Ben面前时,他就不用再掷硬币了,因为没有芝士汉堡了,只有两个牛肉汉堡。输入的第一行给出测试用例数n,后面给出n行,每行给出一个在[2, 4, 6, ..., 100000]中的偶数,表示出席派对的人数,包括Ben和Bill。
2023-08-27 22:05:17
31
原创 What is the Probability
当一个玩家掷骰子时,如果某个预定情况发生(比如骰子显示3的一面朝上,绿色的一面朝上,等等),他就赢了。因此,先是第一个玩家掷骰子,然后第二个掷骰子,最后是第n个玩家掷骰子,再接下来,下一轮,先第一个玩家掷骰子,以此类推。然后给出一个浮点数字p,表示单次掷骰子时成功事件发生的概率(如果成功事件是骰子显示3的一面朝上,则p是单次掷骰子时显示3的一面朝上的概率)。对于普通骰子,显示3的一面朝上的的概率是1/6);最后给出一个i(i≤n),表示要确定其获胜概率的玩家的序列号(序列号从1到n)。
2023-08-27 22:05:08
196
原创 Euclid Problem
对于每个输入行,输出一行,由三个用空格隔开的整数X、Y和D组成。如果有若干个满足条件的X和Y,那么就输出|X|+|Y|最小的那对。如果还是有若干个X和Y满足最小准则,则输出X≤Y的那一对。由欧几里得的辗转相除法可知,对于任何正整数A和B,都存在这样的整数X和Y,AX+BY=D,其中D是A和B的最大公约数。本题要求,对于给定的A和B,找到对应的X,Y和D。输入给出一些行,每行由空格隔开的整数A和B组成,A, B<1000000001。
2023-08-27 22:04:58
57
原创 Simple division
输入的每行给出一个由空格分隔的非零整数序列。每行的最后一个数字是0,这个0不属于这一序列。一个序列中至少有2个,至多有1000个数字;一个序列中的数字并不都是相等的。输入的最后一行给出单个0,程序不用处理该行。被除数n和除数d之间的整数除运算产生商q和余数r。q是最大化q*d的整数,使得q*d≤n,并且r=n−q*d。给出一组整数,存在一个整数d,使得每个给出的整数除以d,所得的余数相同。对于每一行输入,输出最大的整数,使得输入的每一个整数除以该数,余数相同。
2023-08-27 22:04:51
51
2023年华中杯C题论文
2024-07-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人