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. 核心思路很简单,第一轮比较:把l0和ll1到ln-1比较,一直轮到ln-2和ln-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])#最后只有一个胜

总结

中秋节快乐!!!

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

相关推荐
MartinYeung58 分钟前
[论文学习]Latent Fusion Jailbreak: 融合有害与无害表征以诱导大语言模型产生不安全输出
学习·安全·语言模型
星恒随风9 分钟前
C++ 哈希详解(二):开放定址、哈希桶与 C++ 哈希表底层实现
c++·笔记·学习·哈希算法·散列表
迪丽热爱12 分钟前
每日英语-17
学习
IT学长编程15 分钟前
计算机毕业设计 基于用户评论主题挖掘的旅游景点推荐系统 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·python·django·毕业设计·数据可视化分析·旅游景点推荐系统·基于用户评论主题挖掘
内蒙深海大鲨鱼19 分钟前
5.Introduction to PyTorch YouTube Series--visualable train
人工智能·pytorch·python
weixin_4713830335 分钟前
17 Self-RAG —— 幻觉检测 + 答案质量评估
python·agent
叠层归一研究院42 分钟前
如何用程序搭建一个 AGI 种子系统(三):生长如何对接物理与数学宇宙
人工智能·python·算法·机器学习·transformer·agi
旖旎夜光1 小时前
DeepSeek Harness 安装教程
ai·学习方法·开发工具
jufeng13071 小时前
【系列:手搓自主 AI Agent:Hermes 架构原理剖析 · 第 5 篇】
python·ai agent·上下文压缩
AndrewHZ1 小时前
图像处理入门008 | 阶段总结:环境测试与基础概念测验
图像处理·python·opencv·计算机视觉·cv