文库 真题 信息素养大赛真题

2022年全国青少年信息素养大赛Python编程国赛真题

信息素养大赛 Python真题 PDF   12页   下载2   2024-03-14   浏览433   收藏0   点赞0   评分-   免费文档
温馨提示:当前文档最多只能预览 2 页,若文档总页数超出了 2 页,请下载原文档以浏览全部内容。
2022年全国青少年信息素养大赛Python编程国赛真题 第1页
2022年全国青少年信息素养大赛Python编程国赛真题 第2页
剩余10页未读, 下载浏览全部
2022 年全国青少年信息素养大赛 Pyth on 国 赛 1、 分苹果 题目背景: 把一堆苹果 分给 n 个小朋友,每个人拿到的苹果数量不同,并且每个人 至少有 一 个。 任意输入小 朋友的数量 n ,问这堆苹果至少应该有多少个。 输 入描述: 任意输入小 朋友的数量 n 输出描述: 输出这堆苹 果至少应该有多少个 样 例输入: 3 样例输出: 6 注意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 2、 韩信点 兵 题目背景: 韩信点兵又 称为中国剩余定理,相传汉高祖刘邦问大将军韩信统御士兵 多 少,韩信答 说,每 3 人一列余 2 人、 5 人一列余 4 人、 7 人一列余 6 人。 输 入任意一 个数字 n ( 0< =n< =10000 )表示刘邦总共的兵力,计算韩信可能统 御 的士兵数 量并依次输出。 输 入描述: 输入任意一 个数字 n ( 0< =n< =10000 )表示刘邦总共的兵力 输 出描述: 计算韩信可 能统御的士兵数量并依次输出,每行一个,从小到大 样 例输入: 500 样 例输出: 104 209 314 419 注 意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 # 方法 1 ,变 量法 n = int (inp ut ( )) s = 0 for i in ran ge (1, n + 1): s += i pri nt (s) 1 2 3 4 5 6 3、 借书问 题 题目背景: 小明家里有 很多不同的趣味书籍,有 3 个好朋友每人来借 — 本书(同 — 本书一 次 不能借给 两个人) 任意输入书 籍的数量 n(3 < =n< =100) ,输出在所有的书籍中,找 3 本书给 3 个人 有 多少种不 同的排列组合方法 输 入描述: 任意输入书 籍的数量 n(3 < =n< =100) 输 出描述: 输出在所有 的书籍中,找 3 本书给 3 个人有多少种不同的排列组合方法 样 例输入: 3 样例输出: 6 注意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 # 将输入的数 字转成整 数 n = int (inp ut ( )) # 使用枚举算 法,判断 每个数字是否同时满足 3 个条件 for i in ran ge (n + 1) : if i % 3 == 2 and i % 5 == 4 and i % 7 == 6: pri nt (i) 1 2 3 4 5 6 7 4、 四位数 密码 题目背景: 情报员使用 4 位数字来传递信息,同时为了防止信息泄露,需要将数字 进行加 密 。数据加 密的规则是 : 1). 每个数字都 进行如下处理:该数字加上 5 之后除以 10 的余数,替换原数 字 ; 2). 将处理后第 一位数字与第三位数字进行交换,第二位数字与第四位数字进 行 交换; 3). 现在任意输 入一个四位数 n(1 000 < = n < = 9 999) ,输出加密之后的数字。 输 入描述: 一个四位数 输 出描述: 加密后的四 位数 样 例输入: 123 4 样 例输出: 896 7 注 意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 # 方法 1 ,数 学方法 n = int (inp ut ( )) pri nt (n * ( n - 1) * ( n - 2)) 1 2 3 n = int (inp ut ( )) # 分别获取个 位、十位 、百位和千位 1 2 5、 邮票面 值 题目背景: 我们在寄信 的时候都要贴邮票,在邮局有一些小面值的邮票,通过这些 小面 值 邮票中的 一张或者几张的组合,可以满足不同邮件的不同邮资。 已 知每个信 封上最多能贴 5 张邮票,邮票的种类至少需要 3 种,任意输入 一个 数 字 n 代表 邮票的种类,然后依次输入 n 个数字代表不同种类的邮票面值 ,计算并 输 出每个信 封上可以构成的邮资的最大值。 输 入描述: 第一行输入 一个数字 n 代表邮票的种类; 然 后依次输 入 n 行数字代表 n 个不同种类的邮票面值; 输 出描述: 输出每个信 封上可以构成的邮资的最大值。 样 例输入: 4 1 2 3 gw = n % 10 sw = n // 10 % 10 bw = n // 100 % 10 qw = n // 100 0 # 加密处理 gw = ( gw + 5) % 10 sw = ( sw + 5) % 10 bw = ( bw + 5) % 10 qw = ( qw + 5) % 10 # 数字交换 gw , bw = bw , gw sw , qw = qw , sw # 直接输出 pri nt (q w ,bw ,sw ,gw ,sep ="" ) 3 4 5 6 7 8 9 10 11 12 13 14 15 16 4 样例输出: 17 注 意: in p ut( ) 内不 添加任何参数 只有完全正 确才可提交,若无法点击提交说明答题存在错误,可及时进 行检 查 并修改 6、 取球 题目背景: 一个箱子里 面存放着 50 个球,其中 10 个红色, 10 个黄色, 30 个蓝色。 现 在从箱子 里面任意取 n 个球,计算并输出不同颜色的球的数量组合一 共有多 少 种可能性 。 输 入描述: 一个数字 n 输出描述: 一个数字, 可能的组合总数 # 获取数字 n n = int (inp ut ( )) # 定义列表 stamps ,用于保存不同的面值 sta mps = [] # 依次输入不 同邮票面 值,并存入列表中 for i in ran ge (n) : sta mps .a pp end (i nt (inp ut (
2022年全国青少年信息素养大赛Python国赛,2022年全国青少年信息素养大赛Python编程国赛真题
下载提示

下载及版权说明:6547网文库内容来自网络及各平台公开内容(属于用户上传,不保证正确性,只做参考),旨在帮助同学们学习少儿编程相关知识及内容,仅限内部学习及使用,以分享为主,下载本文档之后请合法使用相关、真题、素材、课件、教程等内容,若内容存在侵权,请进行 举报 及查看 免责声明