第1题:数列求和

题目

内存限制: C/C++ 语言 32768KB;其他语言 557056KB

题目描述

数列的定义如下:数列的第一项为 nn,以后各项为前一项的平方根,求数列的前 mm 项的和。

输入描述

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

输出描述

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

样例 1

输入:

81 4
2 2

输出:

94.73
3.41

思路

直接模拟:从 nn 出发累加 mm 项,每加一项就把当前值开一次平方根。浮点精度足够,最后 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/11/03/刷题笔记/机考/小红书/练习题/第1题:数列求和/
作者
Ming
发布于
2026年11月3日
更新于
2026年11月3日
许可协议