Python练习笔记 - -求数列的和

该博客介绍了如何使用Python计算数列的和,其中数列的每一项是前一项的平方根。博客内容包括输入和输出描述、示例以及解题思路,重点讲解了map()、split()和str.format()三个函数的用法,并提供了代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述

数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。

输入描述:

输入数据有多组,每组占一行,由两个整数n(n < 10000)和m(m < 1000)组成,n和m的含义如前所述。

输出描述:

对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留2位小数。

示例1

输入:

81 4
2 2

输出:

94.73
3.41

解题思路&代码段

python3

# 输入数据 m, n
n, m =  map( int, input()
### Python 蓝桥杯 学习笔记 教程 #### 1. 必备基础知识 对于参加蓝桥杯竞赛的学生来说,掌握一些特定的知识点是非常重要的。例如,在Python版本的选择方面,如果使用的是3.9.0及以上版本,则可以直接利用`lcm`函数来计算最小公倍数[^1]。此外,`gcd`函数也得到了更新,支持通过传递多个参数的形式解最大公约数。 #### 2. 基础练习题目分类 蓝桥杯的基础练习部分涵盖了多种类型的编程问题,这些问题可以帮助参赛者熟悉基本的数据结构算法概念。以下是几个典型的例子: - **A+B问题 (BASIC-01)**:这是入门级的加法操作。 - **序列 (BASIC-02)**:涉及简单的数学公式应用。 - **圆的面积 (BASIC-03)**:实数输出的应用实例。 - **Fibonacci数列 (BASIC-04)**:数列生成以及取模运算的学习案例[^2]。 #### 3. 文件读取与处理技巧 某些题目可能涉及到文件的操作,比如从文本文件中读取数据并进行相应的处理。下面是一个简单示例展示如何逐行读取文件内容并将每行去掉换行符后存入列表: ```python lines = [] with open('example.txt', 'r') as f: for line in f.readlines(): lines.append(line.strip('\n')) ``` 这段代码展示了如何打开名为`example.txt`的文件,并将其每一行的内容去除末尾的换行符后再存储到列表`lines`当中[^4]。 #### 4. 矩阵乘法实现 矩阵运算是计算机科学中的一个重要主题,尤其是在解决线性代数相关的问题时尤为常见。这里给出了一种基于Python实现的矩阵相乘方法,该方法能够接受两个相同维度的方阵作为输入,并返回它们相乘后的结果矩阵。 ```python import copy def Matrix_Mul(N, M, a): if M == 0: for i in range(0, N): for j in range(0, N): if i == j: print(1, end=' ') else: print(0, end=' ') print('') exit(0) elif M == 1: for i in range(0, N): for j in range(0, N): print(a[i][j], end=' ') print('') else: b = copy.deepcopy(a) c = copy.deepcopy(a) sum_ab = 0 count = 0 while count < M - 1: for i in range(0, N): for j in range(0, N): for k in range(0, N): sum_ab += b[i][k] * a[k][j] c[i][j] = sum_ab sum_ab = 0 if count == M - 2: for i in range(0, N): for j in range(0, N): print(c[i][j], end=' ') print('') count += 1 b = copy.deepcopy(c) N, M = map(int, input().split()) a = [] for i in range(1, N + 1): a.append(list(map(int, input().split()))) Matrix_Mul(N, M, a) ``` 此段程序定义了一个用于执行矩阵幂运算的功能模块 `Matrix_Mul`,它接收三个参数分别是阶次、幂次以及初始矩阵本身[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值