求数列的和
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 41228 Accepted Submission(s): 25391
Problem Description
数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
Input
输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。
Output
对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留2位小数。
Sample Input
81 4
2 2
Sample Output
94.73
3.41
算法代码
import java.text.DecimalFormat;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
DecimalFormat df = new DecimalFormat("0.00");
Scanner scanner = new Scanner(System.in);
int n, m;
while (scanner.hasNext()) {
n = scanner.nextInt();
m = scanner.nextInt();
double sum = 0, temp = n * n;
for (int i = 0; i < m; i++) {
sum += Math.sqrt(temp);
temp = Math.sqrt(temp);
}
System.out.println(df.format(sum));
}
}
}