今年十八,蓝桥速刷(Python-I)

简介: 今年十八,蓝桥速刷(Python-I)

前言


🍀作者简介:被吉师散养、喜欢前端、学过后端、练过CTF、玩过DOS、不喜欢java的不知名学生。


蓝桥杯是个啥


蓝桥杯是由工信部 人才交流中心举办的全国性专业信息技术赛事


图片引自一篇详情介绍带你了解什么是蓝桥杯。 - 知乎

省一进国赛,只要进国赛至少拿国三,听说2023年的国赛在北大举行,所以北大见


奖金还挺多的,虽然没有打ctf挣得多。。。


不多叭叭,开始刷题


关于A+B的两种题型


1、简单的A+B

资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
输入A、B,输出A+B。
输入格式
输入的第一行包括两个整数,由空格分隔,分别表示A、B。
输出格式
输出一行,包括一个整数,表示A+B的值。
样例输入
12 45
样例输出
57
数据规模与约定
-10000 <= A, B <= 10000。

分析下代码:

 a,b = map(int,input().split())
print(a+b)

首先呢,发现引用了几个函数,分别介绍下


input()


从键盘读取内容,没啥讲的。


split()

这个函数相对来说不是很好理解


该函数主要用于python读取多个数据,通过其读取后为列表形式


至于如何分割,就看你想怎么设置分隔符了。


看上图,第二行在遇到\n时分割。


说第三行,以空格为分隔符,分成两份,至于后面的'1',就是0,1,2,3,4这玩意


如果把1改成0,整个str就变成了一块,分割不开那种。


map()


map(A,B)


A默认为函数,map()负责将B中的每一个元素通过A转换为相应的结果


那么在本题中,就是将通过split()读取进来的数组成的列表转换为int,也就是整形形式。


2、搞心态的A+B


题目描述
输入两个整数a和b,计算a+b的和
本题很简单,但是注意此题是多组测试数据,即需要不停的接收系统的测试输入,你都可以计算结果并输出
输入格式
输入两个整数A和B
范围不超过2^10
输出格式
求A+B
样例输入
复制
1 1
10 20
样例输出
复制
2
30

如果问我在python里最烦的是什么,那我肯定说是try,expect方法


不巧,本题用的就是


首先呢,这种方法和上面的差不多,ex就ex在它是不停输入的一个玩意,需要通过读取异常来实现退出


那么不多bb,直接看代码

while True:
    try:
        a,b=map(int,input().strip().split())
        print(a+b)
    except:
        break

三个语法点:


while循环


没啥讲的吧


python中的while循环比较简单,无大括号,只需加个":"


如果需要对其施加执行条件,按下图搞就行,注意缩进,这玩意在python中很重要

至于

while True:

就是固定执行下列循环


strip()


这个函数挺好理解的,就是去除字符串左右两侧的空格或指定字符串,相应的衍生函数有


  • lstrip():去除左侧空格指定字符串(left)
  • rstrip():去除右侧空格指定字符串(right)

然后就是最不想讲的try/except了


try/except


其实也没啥复杂的,就是自己有点膈应这玩意


首先执行try中的代码,如果里面的函数引起了程序的错误,那么就执行except中的代码


数列


资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200
输入格式
  第一行为一个整数n。   第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。
输出格式
  输出一行,按从小到大的顺序输出排序后的数列。
样例输入
5 8 3 6 4 9
样例输出
3 4 6 8 9

说白了就是一个简单的排序


方法一

n = int(input())
li = list(map(int,input().split()))
li.sort()
for i in li:
    print(i,end=" ")

分析分析代码


没啥难的


sort()

 

这函数默认升序


如果想整成降序

sort(reverse=True)

为啥?


因为这玩意默认reverse = False(升序)


至于为啥用split()读取之后还要在外面费力搞map+list


原因如下图

左侧是整型列表,右侧是字符型列表


然后是


for循环

for循环拿这里的举个栗子吧

for i in li

很明显li是咱们创建的列表,那i是啥?


看看代码


in 表示 i是li 里面的数字


那么就可以理解成i是li里第一位元素


通过for循环不断迭代至下一个元素直至整个列表的最后一位。


至于最后的print格式化输出后面再说


方法二

n = int(input())
li = list(map(int,input().split()))
li.sort()
for i in li:
    if n == 1:
         print("",end=str(i))
         break
    print(str(i),end=" ")

这个直接看下图吧


图片引自菜鸟教程-print()


递归:母牛的故事


我愿称之为母牛无性繁殖的故事

题目描述
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
输入格式
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。
输出格式
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。
样例输入
复制
2
4
5
0
样例输出
复制
2
4
6

分析代码

while True:
    n=int(input())
    l=[1,2,3]
    if n==0:
        break
    else:
        for i in range(3,n):
            l.append(l[i-1]+l[i-3])
    print(l[n-1])

因为小母牛是从第四年开始生娃的,所以每年比上年的增加量就是三年前的母牛数量,所以当年的母牛数量等于前一年的母牛数量加上前三年的母牛数量

目录
相关文章
kde
|
7天前
|
JSON Linux 数据格式
Docker镜像加速指南:手把手教你配置国内镜像源
配置国内镜像源可大幅提升 Docker 拉取速度,解决访问 Docker Hub 缓慢问题。本文详解 Linux、Docker Desktop 配置方法,并提供测速对比与常见问题解答,附最新可用镜像源列表,助力高效开发部署。
kde
4431 12
|
2天前
|
人工智能 安全 Java
|
7天前
|
JavaScript Ubuntu IDE
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
732 3
|
10天前
|
人工智能 定位技术 API
Dify MCP 保姆级教程来了!
大语言模型,例如 DeepSeek,如果不能联网、不能操作外部工具,只能是聊天机器人。除了聊天没什么可做的。
1109 14
|
4天前
typora免费版,激活方法,Typora使用教程
Typora是一款简洁高效的Markdown编辑器,支持即时渲染。本教程涵盖安装方法、文件操作、视图控制、格式排版、字体样式及Markdown语法,助你快速上手使用Typora进行高效写作。
891 0
|
5天前
|
人工智能 Java Spring
【保姆级图文详解】大模型、Spring AI编程调用大模型
【保姆级图文详解】大模型、Spring AI编程调用大模型
465 7
【保姆级图文详解】大模型、Spring AI编程调用大模型
|
16天前
|
Java Linux Maven
2025年最新版最细致Maven安装与配置指南(任何版本都可以依据本文章配置)
本文详细介绍了Maven的项目管理工具特性、安装步骤和配置方法。主要内容包括: Maven概述:解释Maven作为基于POM的构建工具,具备依赖管理、构建生命周期和仓库管理等功能。 安装步骤: 从官网下载最新版本 解压到指定目录 创建本地仓库文件夹 关键配置: 修改settings.xml文件 配置阿里云和清华大学镜像仓库以加速依赖下载 设置本地仓库路径 附加说明:包含详细的配置示例和截图指导,适用于各种操作系统环境。 本文提供了完整的Maven安装和配置
2025年最新版最细致Maven安装与配置指南(任何版本都可以依据本文章配置)
|
3天前
|
数据采集 监控 数据挖掘
企业如何用Data Agent实现数据价值效率的飞跃
在数字化转型背景下,数据被视为“新时代的石油”,但多数企业仍面临数据价值难以高效挖掘的困境。文章深入剖析了当前数据分析中存在的“被动响应”模式及其带来的四大挑战,并提出通过Data Agent实现主动智能与数据分析民主化的新路径。Data Agent基于大语言模型和强化学习技术,具备理解、思考与行动能力,能够从“人找数据”转变为“数据找人”,推动数据洞察从专业人员走向全员参与。
|
9天前
|
人工智能 大数据 开发者
让AI时代的卓越架构触手可及,阿里云技术解决方案开放免费试用
阿里云推出基于场景的解决方案免费试用活动,新老用户均可领取100点试用点,完成部署还可再领最高100点,相当于一年可获得最高200元云资源。覆盖AI、大数据、互联网应用开发等多个领域,支持热门场景如DeepSeek部署、模型微调等,助力企业和开发者快速验证方案并上云。
365 25
让AI时代的卓越架构触手可及,阿里云技术解决方案开放免费试用