当前位置: 首页 > news >正文

蓝桥杯Python案例

以下是一个用 Python 解决蓝桥杯经典题型(如数字处理、算法模拟)的案例,附带思路和代码注释:

 

案例:计算1到n的平方和(基础题)

 

题目描述:输入整数  n ,计算  1² + 2² + 3² + ... + n²  的值。

输入:一个整数  n ( 1 ≤ n ≤ 1000 )。

输出:平方和结果。

 

思路分析

 

直接遍历累加每个数的平方,注意数据范围不会溢出,用基础循环即可解决。

 

代码实现

 

n = int(input()) # 读取输入

result = 0 # 初始化结果

for i in range(1, n + 1): # 遍历1到n

    result += i ** 2 # 累加平方

print(result) # 输出结果

 

 

示例输入: 5 

输出: 55 (计算过程: 1+4+9+16+25=55 )

 

案例:斐波那契数列(递推算法)

 

题目描述:求斐波那契数列第  n  项的值( n ≤ 30 ),数列定义为:

 f(1)=1 , f(2)=1 , f(n)=f(n-1)+f(n-2) ( n≥3 )。

 

思路分析

 

- 递归法:直观但效率低(重复计算)。

- 递推法:从前往后计算,避免重复,效率更高。

 

代码实现(递推法)

 

n = int(input())

if n == 1 or n == 2:

    print(1)

else:

    a, b = 1, 1 # 前两项

    for _ in range(n - 2):

        c = a + b # 计算下一项

        a, b = b, c # 指针后移

    print(b)

 

 

示例输入: 6 

输出: 8 (数列:1, 1, 2, 3, 5, 8)

 

案例:字符串逆序(字符串操作)

 

题目描述:输入一个字符串,逆序输出(如输入  abc ,输出  cba )。

 

思路分析

 

利用 Python 字符串切片特性  [::-1]  直接逆序,简洁高效。

 

代码实现

 

s = input().strip() # 读取输入并去除首尾空格

print(s[::-1]) # 逆序切片输出

 

 

示例输入: hello 

输出: olleh 

 

案例:质数判断(数学算法)

 

题目描述:判断一个数  n  是否为质数(质数定义:大于1且只能被1和自身整除的数)。

 

思路分析

 

- 遍历  2  到  √n  的数,若存在能整除  n  的数,则不是质数。

- 优化:只需判断到  sqrt(n) ,减少循环次数。

 

代码实现

 

import math

 

n = int(input())

if n <= 1:

    print("不是质数")

else:

    is_prime = True

    for i in range(2, int(math.sqrt(n)) + 1): # 遍历到√n

        if n % i == 0:

            is_prime = False

            break

    print("是质数" if is_prime else "不是质数")

 

 

示例输入: 17 

输出: 是质数 

 

关键提示

 

1. 读题仔细:注意输入输出格式(如是否需要换行、空格)。

2. 边界测试:测试极端情况(如  n=0 、 n=1 、空字符串)。

3. 效率优化:简单题可用暴力法,复杂题需考虑算法时间复杂度(如用递推代替递归)。

 

通过练习类似题目,熟悉 Python 语法和算法逻辑,逐步提升解题能力!

http://www.xdnf.cn/news/248959.html

相关文章:

  • 计算机组成原理实验(5) 堆栈寄存器实验
  • 2025五一杯数学建模ABC题赛题已出
  • ctfshow web入门 web44
  • Python学习笔记(第一部分)
  • 基于深度学习的人脸属性识别算法研究
  • 随机森林实战:从原理到垃圾邮件分类
  • 超稳定性理论
  • 第十四章:生产之路:LLM 应用部署、运维与优化
  • MOOS-ivp使用(一)——水下机器人系统的入门与使用
  • 【2025最新面经】暑期实习常问知识点
  • 前端面经 4
  • 【C++学习笔记】深入理解虚函数和多态
  • 简单句练习--语法基础
  • 50、【OS】【Nuttx】【OSTest】参数解析:函数定义
  • 当算力遇上堵车:AI如何让城市血管不再“血栓”?
  • OpenStack Yoga版安装笔记(25)Nova Cell理解
  • 黑马Java基础笔记-6
  • 伽利略如何测量光速?一场跨越山头的失败实验
  • VBA数据结构深度解析:基础类型、自定义类型与数组操作指南
  • Dagster资产工厂实战:从Python到YAML配置的高效ETL流程
  • 408真题笔记
  • 第十三章:LLM 应用质量保证:评估体系、工具与实战
  • 深入解析三大查找算法:线性查找、二分查找与哈希查找的原理与应用
  • 进程(Process)和操作系统(Operation System)
  • ctfshow web入门 web46
  • 用spring-boot-maven-plugin打包成单个jar有哪些缺点优化方案
  • pandas读取Excel数据(.xlsx和.xls)到treeview
  • JavaScript如何实现类型判断?
  • C语言 指针(2)
  • spring-cloud-alibaba最新版本聚合项目创建