第9届Python编程挑战赛北京赛区复赛真题剖析-2023年全国青少年信息素养大赛

news2024/11/25 1:01:58

 [导读]:超平老师计划推出《全国青少年信息素养大赛Python编程真题解析》50讲,这是超平老师解读Python编程挑战赛系列的第16讲。

全国青少年信息素养大赛(原全国青少年电子信息智能创新大赛)是“世界机器人大会青少年机器人设计与信息素养大赛”赛事之一,由中国电子学会主办,包含很多赛项,大赛自2013年举办,已连续成功举办八届,已正式入围“2022-2025学年面向中小学生的全国性竞赛活动名单”。 

大赛旨在激发广大青少年的科学兴趣和想象力,培养钻研探究、创新创造的科学精神和实践能力,促进青少年科技创新活动的广泛开展,发现和培养一批具有科研潜质和创新精神的青少年科技创新后备人才。

大赛主要竞赛类别包括电子科技、智能机器人、软件编程三类,全国青少年Python编程挑战赛就属于其中的软件编程类。

一.赛事说明

2023年(第9届)Python挑战赛赛程分为初赛、复赛和总决赛三个阶段。初赛是资格赛,复赛是地方选拔赛,总决赛是全国各地选拔的精英汇聚在一起进行PK。

本届Python挑战赛是在线上举行,参赛选手登录大赛官网在指定页面完成答题并提交答案。评定成绩的依据是同时考虑得分和用时两个方面,首先是得分高者名次靠前,如果得分一样,则用时少者名次靠前。

2023年全国青少年Python编程挑战赛华北赛区(北京)初中组复赛于2023年7月15日正式举行。一共有6道题,全是编程题,考试时间是90分钟。

6道题目执行时间均限时1000毫秒,内存256M。题目分别是求余数、最大身高差、重复字符、出租车费用、分钱方案和错排问题,接下来超平老师为大家一一解析。

二.真题解析

第1题,求余数

题目描述:

输入一个正整数,输出这个整数除以5的余数。

输入描述:

输入一行一个正整数

输出描述:

输出这个整数除以5的余数

样例1:

输入:

12

输出:

2

[超平老师解读]:

本题考查的知识点是取模运算符,在Python编程中,取模运算符使用%,代码比较简单。

[参考代码]:

图片

图片


第2题,最大身高差

题目描述:

上了初中之后,很多同学身高都开始迅速增长,不过有的同学生长发育的早一些,有的同学会晚一些。

现在学校的生理健康老师想统计一下班级里面学生身高的最大跨度值(最大跨度值=身高最大值-身高最小值)。

任意输入一行整数,中间用空格间隔,输出身高最大跨度值。

输入描述:

输入一行整数,中间用空格间隔。

输出描述:

输出身高最大跨度值。

样例1:

输入:

168  152  140  179  155  162  172

输出:

39

[超平老师解读]:

本题考查的知识点包括输入处理和列表的操作。

输入一行整数,中间使用空格间隔,我们要将每个数字提取出来,需要使用split方法,然后再转换成整数即可。

身高最大跨度,就是最大身高减去最小身高,所以只需要找到这两个列表项即可,可以使用两种方法来实现:

1). 直接使用max和min函数;

2). 对列表按照从小到大的顺序排序;

[参考代码]:

方法1,使用max和min函数,代码如下:

图片

方法2,使用列表排序方法,代码如下:

图片


第3题,重复字符

题目描述:

输入一个字符串s,将s中的每个字符都重复一次,然后输出这个新的字符串,例如,当s="abc"时,输出"aabbcc"。

输入描述:

输入一个字符串s。

输出描述:

输出一个新的字符串。

样例1:

输入:

abcd

输出:

aabbccdd

[超平老师解读]:

本题考查的知识点是字符串处理及运算,首先需要对字符串进行遍历操作,分别获取每一个字符,然后将该字符重复一遍,再进行连接。

对应的可以采取两种方法来编写代码,一是使用字符串拼接,二是直接利用列表推导式和解包操作。

[参考代码]:

方法1,使用字符串拼接,代码如下:

图片

图片

方法2,使用列表推导式结合解包操作,代码如下:

图片

图片


第4题,出租车费用

题目描述:

某市出租车的计费标准是:

起步价 (3千米以内,包括3千米) 14元,以后每超过1千米(不足1千米的按1千米计算)另加价3元。

小可家到学校距离n千米,他打车需要多少钱?

输入描述:

输入一个数n表示小可家到学校距离。

输出描述:

输出打车的费用。

样例1:

输入:

8.8

输出:

32

[超平老师解读]:

本题考查的知识点包括if语句和算术运算,重点是向上取整。

在Python编程中,可以使用数学库math中的ceil方法来实现向上取整。

[参考代码]:

完整的代码如下:

图片


第5题,分钱方案

题目描述:

有n个人,他们需要分配m元钱 (m >= n),每个人至少分到1元钱,且每个人分到的钱数必须是整数。请问有多少种分配方案?

输入描述:

输入一行两个正熬数n, m,用空格间隔。

输出描述:

输出分配方案数。

样例1:

输入:

5  10

输出:

126

[超平老师解读]:

本题考查的知识点是动态规划算法和二维列表的使用,当然也可以使用递归算法来实现,重点是动态规划算法的实现步骤。

具体的分析及实现请参考《使用动态规划解决分钱方案-2023年全国青少年信息素养大赛Python复赛真题精选》这篇文章。


第6题,错排问题

题目描述:

圣诞节快到了,公司为每个员工都准备了礼物,每个礼物都有一个精美的盒子。如果所有的礼物都不小心装错了盒子,求所有礼物都装错盒子共有多少种不同情况。

输入描述:

输入一个正整数n表示公司人数,保证n ≤ 20。

输出描述:

输出一个整数,代表有多少种情况。

样例1:

输入:

2

输出:

1

[超平老师解读]:

本题考查的是经典的错排问题,涉及到的知识点包括函数、递归算法、列表和动态规划算法,重点是动态规划算法。

具体的分析及实现请参考《使用动态规划实现错排问题-2023年全国青少年信息素养大赛Python复赛真题精选》这篇文章。

三.总结与思考

本次复赛一共6道编程题,题目由易到难,考查的知识点主要包括如下几个方面:

  • 输入和输出,重点是一行多个数字的输入;

  • 运算符,重点是取模和取整运算;

  • 字符串处理及操作;

  • 列表的操作及运用,包括一维列表和二维列表;

  • 递归算法;

  • 动态规划算法;

这是初中组的复赛真题,总体来说,题目难度不小,尤其是最后两题,都需要使用动态规划算法。

这就要求我们在平常的学习过程中,要把重点放在算法上,算法是编程的核心,也是解决问题的关键。

当然,每一道题都有多种解法,也请你多思考一下,有没有更好的思路和方法,欢迎和超平老师进行交流。

如果你觉得文章对你有帮助,别忘了点赞和转发,予人玫瑰,手有余香😄

更多教程,请移步至“超平的编程课”gzh。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/868235.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring与Spring Bean

Spring 原理 它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring 仍然可 以和其他的框架无缝整合。 Spring 特点 轻量级 控制反转 面向切面 容器 框架集合 Spring 核心组件 Spring 总共有十几个组件核心容器(Spring core) S…

02.Deep Visual-Semantic Alignments for Generating Image Descriptions

目录 前言泛读摘要IntroductionRelated Work小结 精读Model3.1 学习对齐视觉与语言数据图片表征句子表征对齐目标损失函数解码文本片段对齐图像 MRNN生成描述优化 实验结论 代码 前言 本课程来自深度之眼《多模态》训练营,部分截图来自课程视频。 文章标题&#xf…

湘大 XTU OJ 1290 Alice and Bob 题解(非常详细):字符串 分类讨论 简单模拟

一、链接 1290 Alice and Bob 二、题目 题目描述 Alice和Bob玩剪刀-石头-布的游戏,请你写个程序判断一下比赛的结果。 输入 第一行是一个整数K,表示样例的个数。 以后每行两个单词,rock表示石头,paper表示布,scis…

ETL技术入门之ETLCloud初认识

首先ETL是什么? ETL代表“Extract, Transform, Load”,是一种用于数据集成和转换的过程。它在数据管理和分析中扮演着重要的角色。下面我们将分解每个步骤: Extract(抽取): 这一步骤涉及从多个不同的数据源…

小说推文怎么做详细教程。小说推文项目拆解及分享

科思创业汇 大家好,这里是科思创业汇,一个轻资产创业孵化平台。赚钱的方式有很多种,我希望在科思创业汇能够给你带来最快乐的那一种! 如何制作小说推文的详细教程! 我做自媒体已经五年了,在自媒体行业也…

YOLOv5、YOLOv8改进:MobileViT:轻量通用且适合移动端的视觉Transformer

MobileViT: Light-weight, General-purpose, and Mobile-friendly Vision Transformer 论文:https://arxiv.org/abs/2110.02178 1简介 MobileviT是一个用于移动设备的轻量级通用可视化Transformer,据作者介绍,这是第一次基于轻量级CNN网络性…

CMake语法中的PUBLIC、PRIVATE、INTERFACE关键字含义

在CMake语法中,经常见到PUBLIC、PRIVATE、INTERFACE关键字,它们是什么意思呢?下面举例说明。 如上图,说明如下: RIVATE:私有的。生成 libhello-world.so时,只在 hello_world.c 中包含了 hello.h&#xff0…

C# 随机法求解线性规划问题 蒙特卡洛

线性规划问题: max3x12x2 x12x2<5 2x1x2<4 4x13x2<9 x1>0 x2>0 正确的结果:x11.5; x21, max z6.5 Random random1 new Random(DateTime.Now.Millisecond);Random random2 new Random(DateTime.Now.Millisecond*DateTime.Now.Millisecond);double max-9999,x1…

【electron】electron项目创建的方式:

文章目录 【1】npm init quick-start/electron&#xff08;推荐&#xff09;【2】 克隆仓库&#xff0c;快速启动【3】 通过脚手架搭建项目【4】 手动创建项目 【Electron官网】https://www.electronjs.org/zh/docs/latest/api/app 【1】npm init quick-start/electron&#xf…

六 动手学深度学习v2 ——权重衰退+dropout

1. 权重衰退 最常见的用来处理过拟合的方法 使用均方范数作为硬性限制 使用均方范数作为软性限制 总结&#xff1a; 正则化是处理过拟合的常用方法&#xff1a;在训练集的损失函数中加入惩罚项&#xff0c;以降低学习到的模型的复杂度。 保持模型简单的一个特别的选择是使用…

PostgreSQL查询慢sql原因和优化方案

PostgreSQL sql查询慢优化方案有一下几种解决方案&#xff1a; 1.关闭会话 查询慢sql的执行会话&#xff0c;关闭进程。 查看数据库后台连接进程 SELECT count(*) FROM pg_stat_activity;SELECT * FROM pg_stat_activity; 查看数据库后台连接进程&#xff0c;但是此条SQL不…

稳定的亚马逊测评需要具备哪些条件

自养号测评已经在跨境电商领域变得司空见惯。绝大部分卖家都已开始对店铺产品进行自测评。虽然平台和消费者对测评补单持反感态度&#xff0c;但在普遍测评的环境下&#xff0c;不参与测评可能会导致被市场淘汰。 目前&#xff0c;为了提高安全性&#xff0c;许多卖家已开始自…

自动化测试:你根本不懂自动化测试的快乐

接触了不少同行&#xff0c;由于他们之前一直做手工测试&#xff0c;现在很迫切希望做自动化测试&#xff0c;其中不乏工作5年以上的人。 本人从事软件自动化测试已经近6年&#xff0c;从server端到web端&#xff0c;从API到mobile&#xff0c;切身体会到自动化带来的好处与痛楚…

一分钟上手Vue VueI18n Internationalization(i18n)多国语言系统开发、国际化、中英文语言切换!

这里以Vue2为例子 第一步&#xff1a;安装vue-i18n npm install vue-i18n8.26.5 第二步&#xff1a;在src下创建js文件夹&#xff0c;继续创建language文件夹 在language文件夹里面创建zh.js、en.js、index.js这仨文件 这仨文件代码分别如下&#xff1a; zh.js export de…

Vue实现图片懒加载

Vue实现图片懒加载 前言1.使用vue-lazyload/vue3-lazyload插件2.自定义v-lazy懒加载指令2.1 使用VueUse工具集2.2 使用IntersectionObserver 前言 图片懒加载是一种常见性能优化的方式&#xff0c;它只去加载可视区域图片&#xff0c;而不是在网页加载完毕后就立即加载所有图片…

2023杭电多校第8场E题-0 vs 1

题目链接&#xff1a;http://csoj.scnu.edu.cn/contest/102/problem/1005 解题思路&#xff1a; 代码如下&#xff1a; #include<iostream> #include<math.h> #include<algorithm> using namespace std; const int N 1e5 10;int s[N], l, r; int now;int…

高并发系统设计要点

在系统设计时&#xff0c;如果能预先看到一些问题&#xff0c;并在设计层面提前解决&#xff0c;就会给后期的开发带来很大的便捷。相反&#xff0c;有缺陷的架构设计可能会导致后期的开发工作十分艰难&#xff0c;甚至会造成“推倒重来”的情形。因此&#xff0c;在系统设计阶…

蓝牙耳机运动耳机哪个好、蓝牙运动耳机推荐

尽管我对健身运动一直保持着热情&#xff0c;但有时候由于体力不支&#xff0c;难免会感到坚持困难。幸好&#xff0c;每次去健身房我都会戴上耳机&#xff0c;当动感的音乐流入耳朵&#xff0c;运动变得更加有趣&#xff0c;即使疲惫也能坚持到最后一秒。然而&#xff0c;要实…

PyTorch翻译官网教程-LANGUAGE MODELING WITH NN.TRANSFORMER AND TORCHTEXT

官网链接 Language Modeling with nn.Transformer and torchtext — PyTorch Tutorials 2.0.1cu117 documentation 使用 NN.TRANSFORMER 和 TORCHTEXT进行语言建模 这是一个关于训练模型使用nn.Transformer来预测序列中的下一个单词的教程。 PyTorch 1.2版本包含了一个基于论…

对于生产者消费者/shutdown/close的补充

信号量解决生产者消费者/读写者问题_右大臣的博客-CSDN博客 一点补充 模拟简单的string&#xff0c;循环队列&#xff0c;vector_右大臣的博客-CSDN博客 补充总结 写一个循环队列 用个循环队列去表示class myqueue{ vector<int>qq capacity 容量 front 头 rear 尾…