- 博客(9)
- 收藏
- 关注
原创 C++链表练习:破损的键盘Damaged keyboard(又名:悲剧的文本A tragic text)
小明没有开屏幕就输入一个字符串,他的电脑键盘出现了问题会不定时的自动录入 “home”“end” 两个键,我们知道如果录入home则将光标定位到行首,如果录入end则是将光标定位到行末。现在告诉你小明输入的字符串以及自动出现的“home”、“end”键,让你输出最后屏幕上显示的文本。每组数据占一行,包含不超过100000个字母、下划线、字符“[”或 者“]”。其中字符“[”表示Home键,“]”表示End键。输入文件不超过5MB。CPU占用时长: 1秒 内存使用限制: 128MB。
2024-02-06 19:19:26 444 1
原创 C++链表练习:约瑟夫问题(Josephus Problem)
有编号从 1 到 N 的 N 个人坐成一圈报数,报到 M 的人出局,下一位再从1开始,如此持续,直止剩下一位为止,报告此人的编号 X。输入 N,M,求出 X。第一行:两个整数N,M (0< N,M < 30,000) ,表示开始人数N和报数到M。CPU占用时长: 1秒 内存使用限制: 128MB。一个整数X,表示剩下的最后一个数。
2024-02-06 18:59:08 284 1
原创 C++链表练习:英语单词的公共后缀(Common suffixes for English words)
要存储英语单词,一种方法是使用链表并逐字母存储单词。为了节省空间,如果单词共享相同的后缀,我们可以让它们共享相同的子链表。例如,loading和being存储如下图所示。其中address是结点位置,data是该结点包含的大小写字母,next是下一个结点的位置;所有地址由5个数字构成,-1表示NULL。输出由5个数字构成,表示公共后缀的起始位置。如果没有公共后缀,则改输出-1。现在你的任务就是找到公共后缀的起始位置(例如图中 i 的位置)输入第一行,包含两个结点地址和结点总数n(≤105)。
2024-02-06 18:26:26 297 1
原创 C++队列练习:Blah数集(Blah‘s Number set)
输入包括很多行,每行输入包括两个数字,集合的基a(1<=a<=50))以及所求元素序号n(1<=n<=1000000)现在小高斯想知道如果将集合Ba中元素按照升序排列,第N个元素会是多少?注意:集合中没有重复的元素。(2) 如果x在集合Ba中,则2x + 1和3x + 1也都在集合Ba中;CPU占用时长: 1秒 内存使用限制: 128MB。(1) a是集合Ba的基,且a是Ba的第一个元素;对于每个输入,输出集合Ba的第n个元素值。(3) 没有其他元素在集合Ba中了。
2024-02-05 16:11:38 630 1
原创 C++队列练习:海港(Harbour)
对于第i艘到达的船,他记录了这艘船到达的时间ti (单位:秒),船上的乘客数量ki,以及每名乘客的国籍 x(i,1), x(i,2),…第三艘船在第10秒到达海港,最近24小时到达的船是第一艘船、第二艘船和第 三艘船,共有4+ 2+1=7个乘客,分别是来自国家4,1,2,2,2,3,3,共来自4个不同 的国家。第二艘船在第2秒到达海港,最近24小时到达的船是第一艘船和第二艘船,共有 4 + 2 = 6个乘客,分别是来自国家4,1,2,2,2,3,共来自4个不同的国家;保证输入的ti是递增的,单位是秒;
2024-02-05 15:50:11 693 1
原创 C++队列练习:魔法师与扑克牌游戏(Magician&Poker game)
魔法师峰哥在玩一种扑克牌游戏,n张扑克分别记上1,2,……,n,他打开第一张是1,把它放在一边,然后把最上面2张一张一张地依次移到最后,打开上面一张刚好是2,再放在一边;然后把上面3张一张一张移到最后,打开上面一张刚好是3,再放到一边;,如此继续下去,直到打开最后一张是n,放在一边,这时他发现,放在一边的扑克刚好是1,2,……请程序完成这个任务(n
2024-02-05 15:16:13 708
原创 第二章 printf语句与判断结构
注意:使用printf 时最好添加头文件 #include 。1.Int、float、double、char等类型的输出格式:(1)Int:%d(2)Float: %f, 默认保留6位小数(3)Double: %lf, 默认保留6位小数(4)Char: %c, 回车也是一个字符,用’\n’表示......
2022-06-09 22:58:13 490
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人