蓝桥杯基础练习汇总详细解析(三)——字母图形、01字符串、闰年判断(详细解题思路、代码实现、Python)

试题 基础练习 字母图形

提交此题   评测记录  

资源限制

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

问题描述

利用字母可以组成一些美丽的图形,下面给出了一个例子:

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。

输入格式

输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。

输出格式

输出n行,每个m个字符,为你的图形。

样例输入

5 7

样例输出

ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC

数据规模与约定

1 <= n, m <= 26。

解题分析:

        根据题目描述,我们可以发现这个程序输出的结果是有规律的。我发现的规律是:当输出完第一行字符内容后,第n(n>1)行的首字母按照英文字母表顺序依次往后递增。然后首字母后紧跟着首字母在“英文字母表”的前一个字母。直到当该行的字母变为“A”时,则会输出"A"以后的字母。当一行输出的长度等于程序规定的列数,则“字母图形”一行的内容输出完成。

我的实现思路是:根据ASCII码表示字母,其中“A“对应的ASCII值为65、“B”对应的ASCII值为66(与A的ASCII码值相差1)、“C”对应的ASCII值为67(与A的ASCII码值相差2)....依次类推:可以发现'A'后面的字母对应的ASCII码值可以根据,该字母与A的相对位置推算出来。我使用双层循环实现对程序的输出规范化,将第一个字母的ASCII码值设定为65,然后当字母图形中输出一行内容完毕后,就将第一个字母对应的ASCII码值(first_number)加1。然后根据first_number这个值判断当前的字母是否为A。如果为A,就将ASCII值减1。如果等于A,就将ASCII码值加1。

具体实现如下:

def letter_graph():list_input=list(map(int,input().split())) #接受用户输入的n,mfor n in range(list_input[0]): #规定输出行数first_number=65 #将每行首字母对应的ASCII码设置为65,即Afirst_number+=n #当字母表的一行内容输出完成,则将下一行的首字母往后推移,即ASCII码加1index=0 #初始化下标first_number1=first_number #将每行首字母对应的ascii码值,保存到临时变量first_number中for m in range(0,list_input[1]): #规定输出列数if first_number1==65:result=chr(first_number1+index) #如果ASCII码值为65,即A。将输出A以后得字母index+=1print(result,end="")continue if first_number1>65: #如果当前的字母是print(chr(first_number1),end="")first_number1-=1print()
letter_graph()

运行通过截图:

试题 基础练习 01字串

提交此题   评测记录  

资源限制

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

问题描述

对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

00000

00001

00010

00011

00100

请按从小到大的顺序输出这32种01串。

输入格式

本试题没有输入。

输出格式

输出32行,按从小到大的顺序每行一个长度为5的01串。

样例输出

00000
00001
00010
00011
<以下部分省略>

题目分析:

        如果我们按照排列组合得到32个结果对于我来说,感觉有点困难。因为题目中描述的字母符串由五位01组成,我想到二进制相关知识,且升序输出。然后我就将最大的字符串11111写出来,发现对应的十进制数是31。所以我采用的思路是:通过一个for循环循环遍历生成0到31的十进制数,然后通过使用bin()函数将十进制数转换为二进制数。因为bin()函数返回的结果是一个字符串,且有二进制标志0b,所以我采用了字符串切片技术取出数值部分。然后结合实际情况,定义一个列表,列表元素是全部为0的字符串,用于将输出字符串中的数据补足为五位。

具体实现如下:

def fstr_01():list_01=[]list_zore=["0",'00','000','0000'] #定义一个列表用于补位for i in range(32):str_01=bin(i)[2:] #切片技术取出数据部分str_index=5-len(str_01) #计算出当前数据需要补0位数if str_index:str_01=list_zore[str_index-1]+str_01 #对数据进行补0操作print(str_01)else:print(str_01) #如果输出数据不用补0,则直接输出
fstr_01() #调用函数

运行通过截图:

试题 基础练习 闰年判断

提交此题   评测记录  

资源限制

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

问题描述

给定一个年份,判断这一年是不是闰年。

当以下情况之一满足时,这一年是闰年:

1. 年份是4的倍数而不是100的倍数;

2. 年份是400的倍数。

其他的年份都不是闰年。

输入格式

输入包含一个整数y,表示当前的年份。

输出格式

输出一行,如果给定的年份是闰年,则输出yes,否则输出no。

说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。

样例输入

2013

样例输出

no

样例输入

2016

样例输出

yes

数据规模与约定

1990 <= y <= 2050。

题目分析:

这个题目就是一个条件控制语句,需要知道在python中"%"表示求余运算即可。

具体实现如下

def leap_year():year=int(input())if (year%4==0 and year%100!=0) or year%400==0: #润年的条件判断print("yes" )else:print("no")
leap_year()

运行通过截图:

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

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

相关文章

2024年腾讯云4核8G服务器多少钱一年?买1年送3个月

2024年腾讯云4核8G服务器租用优惠价格&#xff1a;轻量应用服务器4核8G12M带宽646元15个月&#xff0c;CVM云服务器S5实例优惠价格1437.24元买一年送3个月&#xff0c;腾讯云4核8G服务器活动页面 txybk.com/go/txy 活动链接打开如下图&#xff1a; 腾讯云4核8G服务器优惠价格 轻…

软件部署资源计算工具:精确评估资源需求

软件部署资源计算工具&#xff1a;精确评估资源需求 在当今快速发展的信息技术时代&#xff0c;软件部署已成为企业运营不可或缺的一部分。然而&#xff0c;一个常见的挑战是如何精确评估软件部署所需的资源。资源评估不仅关系到软件的性能和稳定性&#xff0c;还直接影响到成…

Ps:通道混合器(工作原理篇)

通过通道混合器 Channel Mixer命令&#xff0c;可以创建高品质的灰度图像、棕褐色图像或其他色调图像&#xff0c;也可以对图像进行创造性的颜色调整&#xff0c;还常用于偏色校正。 要掌握通道混合器的使用方法&#xff0c;需先了解一些基础概念和方法。 1、原色通道 在不同的…

让手机平板成为AI开发利器:AidLux

想ssh登录自己的手机吗&#xff1f; 想在手机上自由的安装lynx、python、vscode、jupyter甚至飞桨PaddlePaddle、Tensorflow、Pytorch和昇思Mindspore吗&#xff1f; 那么看这里....装上AidLux&#xff0c;以上全都有&#xff01; AidLux是一个综合的AI开发平台&#xff0c;…

Vue 与 React:前端框架对比分析

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

Chrome之解决:插件不能使用问题(十三)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

深入理解与实践AB测试:从理论到实战案例解析

一、引言 在互联网产品优化和运营策略制定中&#xff0c;AB测试&#xff08;也称为分组测试或随机化对照实验&#xff09;是一种科学且严谨的方法。它通过将用户群体随机分配至不同的实验组&#xff08;通常是A组和B组&#xff09;&#xff0c;对比不同版本的产品或策略对关键…

基于SpringBoot和Vue的校园管理系统的设计与实现

今天要和大家聊的是一款基于SpringBoot和Vue的校园管理系统的设计与实现 &#xff01;&#xff01;&#xff01; 有需要的小伙伴可以通过文章末尾名片咨询我哦&#xff01;&#xff01;&#xff01; &#x1f495;&#x1f495;作者&#xff1a;李同学 &#x1f495;&#x1f…

深入理解Vue的生命周期机制

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【检索稳定|火爆征稿中】2024年企业管理与数字化经济国际学术会议(ICBMDE 2024)

【检索稳定|火爆征稿中】2024年企业管理与数字化经济国际学术会议&#xff08;ICBMDE 2024&#xff09; 2024 International Conference on Business Management and Digital Economy&#xff08;ICBMDE 2024&#xff09; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~…

【tingsboard开源平台】下载数据库,IDEA编译,项目登录

一&#xff0c; PostgreSQL 下载 需要看官网的&#xff1a;点此下载直达地址&#xff1a;点此进行相关学习&#xff1a;PostgreSQL 菜鸟教程 二&#xff0c;PostgreSQL 安装 点击安装包进行安装 出现乱码错误&#xff1a; There has been an error. Error running C:\Wind…

鸿蒙雄起!风口就在当下,你如何抉择?

近年来&#xff0c;华为自主研发的鸿蒙操作系统&#xff08;HarmonyOS&#xff09;引起了广泛的关注和讨论。鸿蒙系统不仅标志着华为在软件领域的一次重大突破&#xff0c;也预示着全球智能设备市场格局的潜在变化。本文将深入探讨鸿蒙系统的兴起、其在市场上的表现以及对程序员…

【b站李炎恢】Vue.js Element UI | 十天技能课堂 | 更新中... | 李炎恢

课程地址&#xff1a;【Vue.js Element UI | 十天技能课堂 | 更新中... | 李炎恢】 https://www.bilibili.com/video/BV1U54y127GB/?share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 备注&#xff1a;虽然标题声明还在更新中&#xff0c;但是看一些常用…

前端Vue开发技术总结

VUE官网:https://cn.vuejs.org/ VUE官方教程:https://v2.cn.vuejs.org/v2/guide/ Vite官网:https://cn.vitejs.dev/guide/ Element Plus官网:http://element-plus.org/zh-CN/ VsCode常用快捷键 vscode 代码自动对齐快捷键:Shift+Alt+F 一、新建项目 完整的项目结构图如…

如何创建仓库?

第一 绑定邮箱 第二步 创建仓库 第三步 下载gitee 下载 再点击键盘中 windon加r 输入自己创建好的仓库邮箱 第四 在自己项目的文件夹中 打开项目 再进行推送 推送完毕就可以了

【GitLab】Ubuntu 22.04 快速安装 GitLab

在 Ubuntu 22.04 上安装最新版本的 GitLab&#xff0c;可以按照以下步骤操作&#xff1a; 1. 更新系统&#xff1a; 在终端中执行以下命令以确保系统是最新的&#xff1a; sudo apt update sudo apt upgrade2. 安装依赖&#xff1a; 安装 GitLab 所需的依赖包&#xff1a; …

【系统架构师】-第13章-层次式架构设计

层次式体系结构设计是将系统组成一个层次结构&#xff0c;每一层 为上层服务 &#xff0c;并作为下层客户。 在一些层次系统中&#xff0c;除了一些精心挑选的输出函数外&#xff0c; 内部的层接口只对相邻的层可见 。 连接件通过决定层间如何交互的协议来定义&#xff0c;拓扑…

kubernetes负载均衡资源-Ingress

一、Ingress概念 1.1 Ingress概念 使用NodePort类型的Service可以将集群内部服务暴露给集群外部客广端,但使用这种类型Service存在如下几个问题。 1、一个端口只能一个服务使用,所有通过NodePort暴露的端口都需要提前规划;2、如果通过NodePort暴露端口过多,后期维护成本太…

开源AI引擎:文本自动分类在公安及消防执法办案自动化中的应用

一、实际案例介绍 通过文本分类算法自动化处理文本数据&#xff0c;快速识别案件性质和关键特征&#xff0c;极大地提高了案件管理和分派的效率。本文将探讨这两种技术如何帮助执法机构优化资源分配&#xff0c;确保案件得到及时而恰当的处理&#xff0c;并增强公共安全管理的…

SpringBoot集成WebSocket实现简单的多人聊天室

上代码—gitee下载地址&#xff1a; https://gitee.com/bestwater/Spring-websocket.git下载代码&#xff0c;连上数据库执行SQL&#xff0c;就可以运行&#xff0c;最终效果