题目信息

题目类型
二级
题目年份
2023
题目题型
编程题
关 键 词
割圆

题目题干

5. 割圆ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

本题将实现一个简化版的“割圆”游戏。成功点亮所有灯时,联结第一个和最后一个灯称之为“割线”。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

n盏灯环形分布,顺序编号为1到n。灯的初始状态为关闭不亮。假设n为7,则第1号灯与第2、7号灯相邻,第2号灯与第1、3号灯相邻,以此类推。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

灯的点亮规则如下:ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

1、输入m个数,每个数为某个灯的编号,可能重复或只是部分编号;ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

2、m个数中的第1个数所对应的灯,默认点亮;ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

3、 如果输入数对应灯的左侧或右侧已被点亮,则点亮自身。否则啥也不做;ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

4、如果所有的灯都已被点亮,则程序结束,m个数中尚未被处理的数将不再处理;ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

5、输出第1次和最后一次点亮灯的编号;ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

6、如果m个数处理完毕尚未点亮所有灯,则输出No。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

时间限制:1000ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

内存限制:131072ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

第一行2个整数n,m,保证3<=n<=1000,1<=m<=10000。 第二行m个数,每个数都在1到n之间,表示输入序列。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输出ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

如果完成了“割圆”,则输出两个整数,之间用一个空格隔开,否则输出No。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

样例输入ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

7 10ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

2 3 1 7 5 6 5 4 4 2ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

样例输出ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

2 4ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

提示ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

第1个数2,直接被点亮; 第2个数3,3与已亮的2相邻,被点亮; 第3个数1,1与已亮的2相邻,被点亮; 第4个数7,7与已亮的1相邻,被点亮; 第5个数5,5与4和6相邻,但4和6都没亮,什么都不做; 第6个数6,6与已亮的7相邻,被点亮; 第7个数5,5与已亮的6相邻,被点亮; 第8个数4,4与已亮的5相邻,被点亮; 此时,所有的数都被点亮,第1个点亮的是2,最后点亮的是4。ynZ100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

答案解析

相关题目

5. 割圆 本题将实现一个简化版的“割圆”游戏。成功点亮所有灯时,联结第一个和最后一个灯称之为“割线”。 n盏灯环形分布,顺序编号为1到n。灯的初始状态为关闭不亮。假设n为7,则第1号灯与第2、7
4. 合影效果 小云和朋友们去爬香山,为美丽的景色所陶醉,想合影留念。如果他们站成一排,男生全部在左(从拍照者的角度),并按照从矮到高的顺序从左到右排,女生全部在右,并按照从高到矮的顺序从左到右排,
3. 进阶的卡莎 虚空之女·卡莎考入了战斗学院,她的父亲虚空行者·卡萨丁要检查她的考试成绩。已知卡莎一段时间内的成绩序列,请你帮卡萨丁计算卡莎在这段时间内最长的成绩连续上升(相等不算做连续上升)的长
2. 简单密码 Julius Caesar曾经使用过一种很简单的密码。对于明文中的每个字符,将它用它字母表中后5位对应的字符来代替,这样就得到了密文。比如字符A用F来代替。如下是密文和明文中字符的对
1. 数字字符求和 请编写一个程序实现以下功能:从一个字符串中,提取出所有的数字字符即0-9,并作为数求和。 时间限制:1000 内存限制:65536 输入 一行字符串,长度不超过100,字
5.循环数 若一个n位的数字串满足下述条件,则称其是循环数(cyclic):将这个数字串视为整数(可能带有前导0),并用任意一个 1到 n 之间(包含1和n)的整数去乘它时, 会得到一个将原数字串首
4.病人排队 病人登记看病,编写一个程序,将登记的病人按照以下原则排出看病的先后顺序: 1. 老年人(年龄 >= 60岁)比非老年人优先看病。 2. 老年人按年龄从大到小的顺序看病,年龄相同的
3.计算鞍点 给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。 鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。 例如:在下面的例子中(第4行
2.最长最短单词 输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。 试输出第1个最长的单词和第1个最
1.数组逆序重放 将一个数组中的值按逆序重新存放。例如,原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8。 输入 输入为两行:第一行数组中元素的个数n(1<n<100),第

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢