CCF CSP认证 历年题题目自练Day16

CCF CSP认证 历年题题目自练Day16

题目一

试题编号: 201712-1

试题名称: 最小差值

时间限制: 1.0s

内存限制: 256.0MB

问题描述:

问题描述

给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。

输入格式

输入第一行包含一个整数n。

第二行包含n个正整数,相邻整数之间使用一个空格分隔。

输出格式

输出一个整数,表示答案。

样例输入

5

1 5 4 8 20

样例输出

1

样例说明

相差最小的两个数是5和4,它们之间的差值是1。

样例输入

5

9 3 6 1 3

样例输出

0

样例说明

有两个相同的数3,它们之间的差值是0.

数据规模和约定

对于所有评测用例,2 ≤ n ≤ 1000,每个给定的整数都是不超过10000的正整数。

题目分析(个人理解)

  1. 常规输入,还是直接存在列表里面,n=int(input())
    l=list(map(int,input().split()))
  2. 核心思路很简单,第一轮比较:把l[0]和ll[1]到l[n-1]比较,一直轮到l[n-2]和l[n-1]比较,用abs()函数去计算差值,把最小的值赋值给min即可。
  3. 代码如下!!!
python 复制代码
n=int(input())
l=list(map(int,input().split()))
min=10000
for i in range(n-1):#遍历每一个l[i]
    for j in range(i+1,n):#遍历l[i]后面的每一个元素
        if abs(l[i]-l[j])<min:
            min=abs(l[i]-l[j])
print(mi)

题目二

试题编号: 201712-2

试题名称: 游戏

时间限制: 1.0s

内存限制: 256.0MB

问题描述:

问题描述

有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,......,1号小朋友坐在n号小朋友的顺时针方向。

游戏开始,从1号小朋友开始顺时针报数,接下来每个小朋友的报数是上一个小朋友报的数加1。若一个小朋友报的数为k的倍数或其末位数(即数的个位)为k,则该小朋友被淘汰出局,不再参加以后的报数。当游戏中只剩下一个小朋友时,该小朋友获胜。

例如,当n=5, k=2时:

1号小朋友报数1;

2号小朋友报数2淘汰;

3号小朋友报数3;

4号小朋友报数4淘汰;

5号小朋友报数5;

1号小朋友报数6淘汰;

3号小朋友报数7;

5号小朋友报数8淘汰;

3号小朋友获胜。

给定n和k,请问最后获胜的小朋友编号为多少?

输入格式

输入一行,包括两个整数n和k,意义如题目所述。

输出格式

输出一行,包含一个整数,表示获胜的小朋友编号。

样例输入

5 2

样例输出

3

样例输入

7 3

样例输出

4

数据规模和约定

对于所有评测用例,1 ≤ n ≤ 1000,1 ≤ k ≤ 9。

答题栏

试题编号: 201712-2

试题名称: 游戏

题目分析(个人理解)

  1. 看题目,常规输入,我直接
    n,k=map(int,input().split())
  2. 然后把小朋友的编号迭代生成并放在列表 l 中。l=[i for i in range(1,n+1)]
  3. 注意k的取值范围,我第一次做漏掉了k=1的情况,只能拿到90分,遍历每一个小朋友的编号,将满足条件的编号依次放入列表s中,最后把他们从l中踢出去,最后列表l只有一个元素,输出即可!
  4. 上代码!!!
python 复制代码
n,k=map(int,input().split())
l=[i for i in range(1,n+1)]#存同学编号
m=1#计数
if k==1:#此种情况只有最后一个同学没被淘汰
    print(n)
else:
    while len(l)>1:
      s=[]#存储本次遍历淘汰的编号
      for i in l:
        if m%k==0 or m%10==k:
            s.append(i)
        m+=1
      for i in s:
        l.remove(i)#移动出去
    print(l[0])#最后只有一个胜

总结

中秋节快乐!!!

从小学到大学一直联系的好兄弟:

相关推荐
说码解字18 分钟前
如何系统学习音视频
学习·音视频
Lester_11011 小时前
嵌入式学习笔记 - 关于STM32 SPI控制器读取以及写入时,标志位TXE, RXNE的变化
笔记·学习
小羊Linux客栈2 小时前
Python小程序:上班该做点摸鱼的事情
开发语言·python·小程序·游戏程序
老胖闲聊3 小时前
Python PyTorch库【机器学习框架】全面深入讲解与实践
pytorch·python·机器学习
aiweker4 小时前
python数据分析(六):Pandas 多数据操作全面指南
python·数据分析·pandas
liang89994 小时前
Shiro学习(七):总结Shiro 与Redis 整合过程中的2个问题及解决方案
redis·学习·bootstrap
weixin_486281454 小时前
FFmpeg源码学习---ffmpeg
学习·ffmpeg
27669582924 小时前
得物 小程序 6宫格 分析
java·python·小程序·得物·得物小程序·得物六宫格·六宫格验证码
天才测试猿4 小时前
基于Pytest接口自动化的requests模块项目实战以及接口关联方法详解
自动化测试·软件测试·python·测试工具·单元测试·测试用例·pytest
啊阿狸不会拉杆5 小时前
人工智能数学基础(三):微积分初步
人工智能·python·算法·数学建模