java题目 统计每个月兔子的总数
有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问第n个月的兔子总数为多少?
本题有多组数据。
数据范围:每组输入满足 1 \le n \le 31 \1≤n≤31
输入描述:
多行输入,一行输入一个int型整数表示第n个月
输出描述:
每一行输出对应的兔子总数
示例1
输入:
1 2 3 4 5 9
输出:
1 1 2 3 5 34
1 import java.io.BufferedReader; 2 import java.io.InputStreamReader; 3 import java.io.IOException; 4 5 public class Main { 6 public static void main(String[] args) throws IOException { 7 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 8 String line; 9 while((line = br.readLine()) != null) { 10 int n = Integer.parseInt(line); 11 int mount1 = 1; //1月兔子 12 int mount2 = 0; //2月兔子 13 int mount3 =0; //3月兔子 14 int add = 0; //下个月将出生的兔子 15 for(int i = 2; i <= n; i++) { //从2月开始计算,i表示第i个月 16 mount3 = mount3 + mount2; 17 mount2 = mount1; 18 mount1 = add; 19 add = mount2 + mount3; 20 } 21 System.out.println(mount1 + mount2 + mount3); 22 } 23 } 24 }