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])#最后只有一个胜

总结

中秋节快乐!!!

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

相关推荐
心扬2 分钟前
python网络编程
开发语言·网络·python·tcp/ip
忧陌6065 分钟前
DAY 44 预训练模型
python
qq_454175799 分钟前
c++学习-this指针
开发语言·c++·学习
恰薯条的屑海鸥20 分钟前
零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
网络·学习·安全·web安全·渗透测试·csrf·网络安全学习
点云SLAM21 分钟前
PyTorch 中contiguous函数使用详解和代码演示
人工智能·pytorch·python·3d深度学习·contiguous函数·张量内存布局优化·张量操作
尘浮72835 分钟前
60天python训练计划----day45
开发语言·python
哆啦A梦的口袋呀1 小时前
基于Python学习《Head First设计模式》第六章 命令模式
python·学习·设计模式
努力搬砖的咸鱼1 小时前
从零开始搭建 Pytest 测试框架(Python 3.8 + PyCharm 版)
python·pycharm·pytest
Calvex1 小时前
PyCharm集成Conda环境
python·pycharm·conda
一千柯橘1 小时前
python 项目搭建(类比 node 来学习)
python