第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题:数列求和/
作者
Ming
发布于
2026年9月19日
更新于
2026年9月20日
许可协议