【蓝桥杯省赛真题34】python积木搭建 中小学青少年组蓝桥杯比赛 算法思维python编程省赛真题解析

python积木搭建

第十三届蓝桥杯青少年组python比赛省赛真题

一、题目要求

(注:input()输入函数的括号中不允许添加任何信息)

1、编程实现

小蓝和小青在玩积木搭建游戏,具体玩法如下:
小蓝报一个数字N,代表高楼的高度,小青则需要使用最少的积木搭建出高度大于N的高楼。
给出小蓝所报出的数字N,及已有积木块每一块的高度,请你帮助小青找出最少需要多少块积木可以搭建出高度大于N的高楼。
例如::N=12,已有4个积木块的高度分别为4,7,8,4。
则最少需要2块积木,可以使搭建的高楼高度大于12,2块积木为7和8。

2、输入输出

输入描述:第一行输入一个正整数N,表示小蓝报出的数字
第二行输入多个正整数,表示已有积木块每一块的高度,正整数之间以一个英文逗号隔开。(要求所有正整数之和大于N)

输出描述:输出最少需要使用多少块积木,可以搭建出高度大于N的高楼

输入样例:

12
4,7,8,4

输出样例:

2

二、算法分析

  1. 题目看着有点复杂,但小朋友可以仔细分析一下
  2. 这题其实可以用列表实现起来比较方便
  3. 将每个积木的高度加入列表,然后进行排序
  4. 最后只要将搭建高度依次减去列表中的最大值就可以得到最少需要几块积木

三、程序编写

n = int(input())
ls = list(map(int,input().split(',')))
ls.sort()
for i in range(len(ls)-1,-1,-1):n -= ls[i]if(n <= 0):print(len(ls) - i)break

四、程序说明

  1. 利用input输入函数从键盘获取高楼的高度
  2. 利用int函数将n转换成整数类型
  3. 利用split函数以及map函数将输入的多个糖果罐里面对应的积木高度转换成整数对象,并结合list函数将多个对象转换成列表
  4. 利用sort函数对列表进行从低到高进行排序
  5. 接着利用for循环,从列表的最后一个元素开始循环遍历,每次遍历将n减去当前元素的值
  6. 如果n小于等于0,表示已经找到了满足条件的子列表,程序输出当前遍历的次数(即满足条件的子列表的长度),并且跳出循环

五、运行结果

12
4,7,8,42

六、考点分析

难度级别:中等,这题相对而言还是有一点小难度,难在产生列表和输出对应图形,具体主要考查如下:

  1. 学会分析题目,找到解题思路
  2. 学会简单的算法知识的应用
  3. input函数:Python 中 input() 函数接受一个标准输入数据,返回为 string 类型。
  4. int函数:强制将传入对象转换成整数类型
  5. split函数:按照指定的分隔符进行分割
  6. map函数:将指定的对象按照指定的函数进行迭代,在这里是将时分秒字符串类型数据按int整数类型数字返回输出(相当于多个变量强制类型转化)
  7. list函数:强制将参数转化成列表对象
  8. 学会列表的相关操作:列表声明、取数、遍历等等
  9. 学会for循环的使用:for循环可以遍历任何有序的项及列表元素等等。
  10. range函数:rang(a,b),循环的时候是不包括b的,所以我们这个案例中要转变一下,要想包含b,就应该写成range(a,b+1)
  11. 学会if...条件判断语句的使用:满足条件才执行相应的程序
  12. print函数:用于打印输出,最常见的一个函数。
  13. 充分掌握for循环和列表相关操作函数的使用

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

七、 推荐资料

  • 所有考级比赛学习相关资料合集【推荐收藏】

1、蓝桥杯比赛

  • 蓝桥杯python选拔赛真题详解

  • 蓝桥杯python省赛真题详解

  • 蓝桥杯python国赛真题详解

  • 历届蓝桥杯科技素养计算思维真题解析

2、考级资料

  • python等级一级真题解析【电子学会】

  • python等级二级真题解析【电子学会】

  • python等级三级真题解析【电子学会】

  • python等级四级真题解析【电子学会】

3、其它资料

  • 初学python100例

  • 历届蓝桥杯scratch国赛真题解析
  • 历届蓝桥杯scratch省赛真题解析
  • 历届蓝桥杯scratch STEMA选拔赛真题解析
  • 历届蓝桥杯科技素养计算思维真题解析
  • 画图-scratch编程考级99图
  • 电子学会历年scratch等级考试一级真题解析
  • 电子学会历年scratch等级考试二级真题解析
  • 电子学会历年scratch等级考试三级真题解析
  • 电子学会历年scratch等级考试四级真题解析
  • 零基础学习scratch3.0【入门教学 免费】
  • 零基础学习scratch3.0【视频教程 114节 免费】

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZC706+AD9361 运行 open WiFi

先到github上下载img&#xff0c;网页链接如下&#xff1a; https://github.com/open-sdr/openwifi?tabreadme-ov-file 用win32 Disk lmager 把文件写入到SD卡中&#xff0c;这一步操作会把SD卡重新清空&#xff0c;注意保存数据。这个软件我会放在最后的网盘链接中 打开linu…

计算机网络(二)物理层

物理层 一、通信基础1.奈氏准则、香农定理2.编码与调制3.电路交换、报文交换、分组交换 二、 传输介质、设备1.导向性传输介质&#xff1a;1.1双绞线1.2 同轴电缆1.3光纤 2.非导向性传输介质&#xff1a; 一、通信基础 信道带宽&#xff1a;信道能通过的最高频率和最低频率之差…

ECP-PTP-001 核算范围ZZ同步问题

最近一直在做ECP payroll的项目&#xff0c;原来有接触过CPI&#xff0c;所以PTP的主数据复制相对来说就简单很多&#xff0c;但是ECP payroll整体实施难度与SAP hcm相差不大&#xff0c;比较麻烦的就是PCC与PTP相关知识&#xff0c;今天就遇到一个奇葩问题,如果工资核算范围是…

[激光原理与应用-80]:PLC通信协议之-OMRON欧姆龙FINS TCP通信协议详细解析

目录 一、OMRON欧姆龙 PLC简介 1.1 OMRON欧姆龙 PLC 1.2 OMRON欧姆龙 PLC通信协议简介 1.3 通信架构 二、欧姆龙FINS协议简介 2.1 简介 2.2 协议分层 2.3 OMRON&#xff08;欧姆龙&#xff09;FINS协议的本质 2.4 OMRON&#xff08;欧姆龙&#xff09;FINS&#xff08…

GRU实现时间序列预测(PyTorch版)

&#x1f4a5;项目专栏&#xff1a;【深度学习时间序列预测案例】零基础入门经典深度学习时间序列预测项目实战&#xff08;附代码数据集原理介绍&#xff09; 文章目录 前言一、基于PyTorch搭建GRU模型实现风速时间序列预测二、时序数据集的制作三、数据归一化四、数据集加载器…

踩坑uniapp中打包Andiord app,在真机调试时地图以及定位功能可以正常使用,打包成app后失效的问题

首先看到这是uni官网提出的&#xff0c;app上建议使用高德地图。 下面就用高德地图进行配置。 步骤一&#xff1a;登陆高德地图控制台 名称和类型根据自己情况填写选择即可 步骤二&#xff1a; 添加key 步骤三&#xff1a;取到SHA1 进入uniapp开发官网 点击应用名称&#…

深度好文:解决Ubuntu 18.04安装nvidia显卡驱动,导致内核不匹配:无需重装系统修复内核

深度好文&#xff1a;解决Ubuntu 18.04安装nvidia显卡驱动&#xff0c;导致内核不匹配&#xff1a;无需重装系统修复内核 目录 一、问题描述二、尝试修复三、安装Nvidia驱动和CUDA并配置cuDNN四、总结 一、问题描述 昨天打算更新一下Ubuntu 18.04的显卡驱动&#xff0c;以支持…

使用OpenXlab下载数据集(推荐)

OpenXLab浦源面向人工智能领域开发者和使用者,提供一站式AI开发平台。提供包括应用开发,模型免费托管,数据集下载等服务 官方网址:https://openxlab.org.cn/datasets?lang=zh-CN 提供了6622种数据集, 涉及计算机视觉、自然语言处理、多模态、通用机器学习、音频识别以及其他…

互联网公司裁员现象调查:探寻背后原因与应对策略

近年来&#xff0c;随着互联网行业的快速发展&#xff0c;裁员现象日益引起广泛关注。本文通过对互联网公司裁员现象的调查&#xff0c;分析背后原因&#xff0c;探讨应对策略&#xff0c;以期为互联网企业和求职者提供参考。 近年来&#xff0c;我国互联网行业历经高速发展&am…

软件项目的上线和维护流程

软件项目的上线和维护流程是软件开发生命周期中至关重要的阶段&#xff0c;它确保了软件产品能够在实际环境中稳定运行&#xff0c;并根据用户反馈进行持续改进。以下是软件项目上线和维护的一般流程&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业…

【一】TensorFlow神经网络模型构建之神经元函数及优化方法

TensorFlow神经网络模型构建主要涉及如下几块&#xff1a;神经元函数、卷积函数、池化函数、分类函数、优化方法。下面分别对这几块进行展开说明&#xff1a; 神经元函数及优化方法 神经网络之所以能解决非线性问题&#xff08;如语音、图像识别等&#xff09;&#xff0c;本…

《计算机工程与应用》投稿经验2024

要按照官网格式写论文&#xff0c;这会节省很多时间。审稿费120元&#xff0c;本人计算机视觉方向&#xff0c;9页&#xff0c;没有打折&#xff0c;版面费5000&#xff0c;彩图和表格过多的原因。版权协议等论文录用之后再交即可&#xff0c;一审二审的时候不用交&#xff0c;…