第1题:数列求和
题目
内存限制: C/C++ 语言 32768KB;其他语言 557056KB
题目描述
数列的定义如下:数列的第一项为 $n$,以后各项为前一项的平方根,求数列的前 $m$ 项的和。
输入描述
输入数据有多组,每组占一行,由两个整数 $n$($n < 10000$)和 $m$($m < 1000$)组成,$n$ 和 $m$ 的含义如前所述。
输出描述
对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留 2 位小数。
样例 1
输入:
81 4
2 2输出:
94.73
3.41思路
直接模拟:从 $n$ 出发累加 $m$ 项,每加一项就把当前值开一次平方根。浮点精度足够,最后 f"{ans:.2f}" 保留两位小数。
代码
import sys
import math
for line in sys.stdin:
line = line.strip()
if not line: # 跳过空行
break
n, m = map(int, line.split())
curr = float(n)
ans = 0.0
for _ in range(m):
ans += curr
curr = math.sqrt(curr)
print(f"{ans:.2f}")第1题:数列求和
https://mingsm17518.github.io/2026/09/19/刷题笔记/小红书/练习题/第1题:数列求和/