蓝桥杯基础练习详细解析一(代码实现、解题思路、Python)

 试题 基础练习 数列排序

资源限制

内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

输入格式

  第一行为一个整数n。
  第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。

输出格式

  输出一行,按从小到大的顺序输出排序后的数列。

样例输入

5
8 3 6 4 9

样例输出

3 4 6 8 9

题目解析:这道题目是一个数字排序问题,因为在Python中列表有自动排序的函数sort(),并且需要使用列表保存用户输入的多个同类型数据。所以我们选择列表保存数据。然后对列表使用sort()函数即可实现排序。但是需要注意的是:排序完成后,输出最后一个列表元素,不能带有空格。

具体实现如下:

def paixu():length=map(int,input())list_arry=list(map(int,input().split()))list_arry.sort()for number in list_arry:if number!=max(list_arry):print(number,end=" ")else:print(number,end="")
paixu()

运行通过截图:

试题 基础练习 十六进制转八进制

提交此题   评测记录  

资源限制

内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述
  给定n个十六进制正整数,输出它们对应的八进制数。

输入格式
  输入的第一行为一个正整数n (1<=n<=10)。
  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。

输出格式
  输出n行,每行为输入对应的八进制正整数。

  【注意
  输入的十六进制数不会有前导0,比如012A。
  输出的八进制数也不能有前导0。

样例输入
  2
  39
  123ABC

样例输出
  71
  4435274

  提示
  先将十六进制数转换成某进制数,再由某进制数转换成八进制。

题目分析:

        首先需要定义一个变量用于接受十六进制数的个数,然后利用for循环实现十六进制的录入。

解题过程中用到的函数有:int(str,n)——将输入的字符串数据str视为指定的进制数,然后转换为十进制数返回;         oct(number)将十进制数据number转换为八进制。

具体实现如下:

def oct_number():n = int(input())results=[] #保存计算结果for i in range(n):number=int(input(),16) #将输入数据视为十六进制数,然后转换为十进制数result=oct(number)[2:] #因为返回结果是字符串,且有0o标志,所以需要切片results.append(result) #保存结果for result in results:print(result)
oct_number()

试题 基础练习 十六进制转十进制

提交此题   评测记录  

资源限制

内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。

样例输入

FFFF

样例输出

65535

题目分析:

这个题目很简单,就是利用int(str,n)函数将指定的数据转换为10进制数即可。这里我将再次解释int()函数的作用:int(str,n)函数有两个参数,第一个参数是一个字符串类型数据,表示程序员需要转换的数据,n是输入数据的对应的进制数类型。当这两个参数输入完成后,int()函数会返回一个十进制的整数。  大家只要理解int()函数的用法,则这个题目就很简单了。

具体实现如下:

def ten_number():hex_number=input() #接受用户输入ten_number=int(hex_number,16) #将用户输入的十六进制,转换为十进制数返回print(ten_number)
ten_number()

试题 基础练习 十进制转十六进制

提交此题   评测记录  

资源限制

内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
  给出一个非负整数,将它表示成十六进制的形式。

输入格式

  输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647

输出格式

  输出这个整数的16进制表示

样例输入

30

样例输出

1E

题目分析:

将输入的数据通过int()函数转换为十进制数,在利用hex()函数将得到的十进制数转换为十六进制数即可。注意事项:因为hex(number)函数中的参数number是一个int类型的数据,所以需要将输入数据使用int函数处理。此外hex()函数返回的结果是一个字符串,且有十六进制的标志‘0x’所以需要切片,同时结合题目中的要求输出的字符是大写字母,所以要用到字符串内置函数upper()将返回的十六进制数中的小写字母全部转换为大写字母。

具体实现如下:

def hex_number():ten_number=int(input(),10)hex_number=hex(ten_number)[2:]print(hex_number.upper())
hex_number()

试题 基础练习 特殊回文数

提交此题   评测记录  

资源限制

内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  123321是一个非常特殊的数,它从左边读和从右边读是一样的。
  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。

输入格式

  输入一行,包含一个正整数n。

输出格式

  按从小到大的顺序输出满足条件的整数,每个整数占一行。

样例输入

52

样例输出

899998
989989
998899

数据规模和约定

  1<=n<=54。

题目分析:这个题目经过几个条件判断即可。我的解题想法是将数字范围规定在10000~999999,然后通过map()函数将转为字符串的数字进行求和,将求和结果与输入数据比较,如果相等就判断该数字是否满足“回文数特点”。判断过程可以通过切片完成,如果满足回文数条件,就输出数据即可。

注意事项:进行切片的时候,切片的范围不包括最后指定的索引位置。如果需要将字符串的内容倒序切片,可以将切片的步长指定为“-1”,这样就会先将切片内容倒序后,再进行切片,此时的开始索引从-1开始,切片范围不包括最后指定的索引位置。

具体实现如下:

def cycle_number():n=int(input())for number in range(10000,999999+1):str_number=str(number) #将输入数据转换为字符串,便于求和及切片result=sum(list(map(int,str_number))) #对字符串进行求和if result==n:if len(str_number)==5:if str_number[:2]==str_number[-1:-3:-1] :print(number)if len(str_number)==6:if str_number[:3]==str_number[-1:-4:-1]:print(number)
cycle_number()

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

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

相关文章

对于组件通信的深刻理解

父组件传递数据给子组件 props传递数据 父组件在子组件的标签上写自定义的属性,属性值是自己的变量,当渲染到子组件时,执行props会找自定义属性,内存了变量的内存,可访问到,写props,会生成vue实例的时候,将props的变量赋给,值找变量内存存入变量.插值语句等可访问.父组件会变…

android Fragment 生命周期 方法调用顺序

文章目录 Introlog 及结论代码 Intro 界面设计&#xff1a;点击左侧按钮&#xff0c;会将右侧 青色的RightFragment 替换成 黄色的AnotherRightFragment&#xff0c;而这两个 Fragment 的生命周期方法都会打印日志。 所以只要看执行结果中的日志&#xff0c;就可以知道 Fragme…

DBA工作经验总结

目录 一、MySQL8.0创建一张规范的表 1.表、字段全采用小写 2.int类型不再加上最大显示宽度 3.每张表必须显式定义自增int类型的主键 4.建表时增加comment来描述字段和表的含义&#xff08;防止以后忘记&#xff09; 5.建议包含create_time和update_time字段 6.核心业务增…

Godot 学习笔记(5):彻底的项目工程化,解决GodotProjectDir is null+工程化范例

文章目录 前言GodotProjectDir is null解决方法解决警告问题根本解决代码问题测试引用其实其它库的输出路径无所谓。 工程化范例环境命名规范Nuget项目结构架构代码ISceneModelIOC服务 测试GD_Extension 通用扩展TestUtils GD_ProgramTestServiceMainSceneModel Godot对应的脚本…

信号处理与分析——matlab记录

一、绘制信号分析频谱 1.代码 % 生成测试信号 Fs 3000; % 采样频率 t 0:1/Fs:1-1/Fs; % 时间向量 x1 1*sin(2*pi*50*t) 1*sin(2*pi*60*t); % 信号1 x2 1*sin(2*pi*150*t)1*sin(2*pi*270*t); % 信号2% 绘制信号图 subplot(2,2,1); plot(t,x1); title(信号x1 1*sin(…

MySQL数据库基本操作(增删改查)与用户授权

前言 SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;是一种用于管理关系数据库系统的语言。SQL的设计目标是提供一种简单、直观的语言&#xff0c;使得用户可以通过编写SQL语句来处理他们想要的数据和操作。 目录 一、结构介绍 1. 查看信…

银行监管报送系统介绍(五):金融统计数据大集中自动化报送系统——PBOC Report

人民银行金融统计数据大集中自动化报送系统&#xff08;简称PBOC Report&#xff09;&#xff0c;是基于现代计算机网络技术应用基础上&#xff0c;由人行总行设置金融统计数据服务器&#xff0c;建立的一个全国统一的金融统计数据库。 人行针对各银行存贷款、中间业务、网点人…

学习刷题-13

3.23 hw机试【二叉树】 剑指offer32 剑指 offer32&#xff08;一、二、三&#xff09;_剑指offer 32-CSDN博客 从上到下打印二叉树I 一棵圣诞树记作根节点为 root 的二叉树&#xff0c;节点值为该位置装饰彩灯的颜色编号。请按照从 左 到 右 的顺序返回每一层彩灯编号。 输…

【机器学习300问】48、如何绘制ROC曲线?

ROC曲线&#xff08;受试者工作特征曲线&#xff09;是一种用于可视化评估二分类模型性能的指标。特别是在不同阈值情况下模型对正类和负类的区分能力。那么“阈值”到底是个什么呢&#xff1f;ROC曲线中的每一个点到底是什么意思&#xff1f; 一、ROC曲线的绘制【理论】 二分…

LabVIEW电动汽车直流充电桩监控系统

LabVIEW电动汽车直流充电桩监控系统 随着电动汽车的普及&#xff0c;充电桩的安全运行成为重要议题。通过集成传感器监测、单片机技术与LabVIEW开发平台&#xff0c;设计了一套电动汽车直流充电桩监控系统&#xff0c;能实时监测充电桩的温度、电压和电流&#xff0c;并进行数…

Notepad++ 如何调整显示字面大小

在 Notepad 上&#xff0c;可以使用 ctrl 加上鼠标的左键来滚动来进行调整。 如何恢复默 可以使用 Ctrl 加数字键盘上的 / 键 来恢复默认设置。 当然也可以通过菜单栏上 view 菜单下的 Zoom 选项。 上面的界面中可以看到我们的在 Notepad 中使用的选项。 Notepad 如何调整显示…

pycharm搭建新的解释器及删除处理

目录 1.创建虚拟环境 个人实际操作&#xff1a; 对于“继承全局站点包”&#xff1a; 2.创建一个新项目 3.删除操作 &#xff08;1&#xff09;删除解释器 &#xff08;2&#xff09;删除新建项目 1.创建虚拟环境 Pycharm官方文档说明网址&#xff1a; Configure a virt…