解题思路:
本题乍看之下整体规律难以找出,为了快速解题,我们可以将此题拆分化解为三个部分:
1、找分子与N之间的规律:类似于斐波那契数列的规律,从第三项起,每项为前俩项和
2、找分母与N之间的规律:同分子,从第三项起,每项为前俩项和
3、分别求分子,分母,求和
注意事项: 为避免溢出,且便于保留小数,定义成double
参考代码:
import java.util.Scanner; public class Main { public static double molecular(int n) { if(n == 1){ return 2; }else if(n == 2){ return 3; }else { return molecular(n-1)+molecular(n-2); } } public static double denominator(int n) { if(n == 1){ return 1; }else if(n == 2){ return 2; }else { return denominator(n-1)+denominator(n-2); } } public static double scoreSum(int n) { double sum =0; for (int i = 1; i <= n; i++) { sum += molecular(i)/denominator(i); } return sum; } public static void main(String[] args) { int input; Scanner sc = new Scanner(System.in); input = sc.nextInt(); System.out.println(String.format("%.2f",scoreSum(input))); } }
0.0分
4 人评分
【明明的随机数】 (C++代码)浏览:834 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:686 |
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:366 |
模拟计算器 (C++代码)浏览:885 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:729 |
输入输出格式练习 (C语言代码)浏览:773 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1108 |
马拦过河卒 (C语言代码)浏览:1213 |
IP判断 (C++代码)浏览:787 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:456 |