A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© nighhr 初级黑马   /  2017-10-18 22:36  /  1127 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 nighhr 于 2017-10-18 22:37 编辑

public void undeadRabit() {//有一对兔子,从出生起后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子, 假如兔子都不死,问第二十个月的兔子对数为多少?
                        Scanner mon = new Scanner(System.in);
                        Scanner beg = new Scanner(System.in);
                        System.out.println("请输入兔子共生了多少个月");
                        int s = mon.nextInt();
                        System.out.println("请输入每只兔子从第几个月开始生");
                        int b = beg.nextInt();
                        int[] sum = new int; // 当年兔子可生兔子数量
                        int[] num = new int; // 每年兔子新生数量
                        num[0] = 1;                                //为num数组提供初始算术条件
                        num[1] = 1;
                        for (int month = 0; month < s; month++) {
                                // 每年兔子新生数量等于除了前两年以外的所有兔子和
                                for (int a = 0; a <= month - 2; a++) {
                                        num[month] += num[a];
                                }
                                // 从3月到17月 当年共可生兔子数量是 可生月份*当年新生数量
                                if (month > (b-2) && month < (s+1-b)) {
                                        sum[month] = (s-b - month) * (num[month]);
                                }
                        }
                        //遍历sum数组 求和 得出第3-17年的兔子共生多少兔子
                        int sun = 0;
                        for (int d = 0; d < sum.length; d++) {
                                sun += sum[d];
                        }
                        //加上第一年1只兔子和第二年1只兔子所生的18只和17只兔子
                        sun = sun + s*2-b*2+1;
                        System.out.println("在"+s+"个月中,一共生了"+sun+"只兔子(每只兔子从第"+b+"个月开始生)");
                }

6 个回复

倒序浏览
这是一个算法吧
回复 使用道具 举报

嗯  做完具体题目改写的 甚至有些注释都忘了改,,
回复 使用道具 举报
回复 使用道具 举报
66666666666666666
回复 使用道具 举报
小学奥数题用java说出来
回复 使用道具 举报
nighhr 来自手机 初级黑马 2017-10-23 11:12:49
7#
fashionkillyou 发表于 2017-10-19 01:18
可以用递归算法

现在普遍都用那种算法 我想换一种。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马