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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 执剑人 中级黑马   /  2016-3-7 11:16  /  1155 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?(需写出分析思路)
         * 分析:
         * 没3个瓶盖就是一瓶可乐,就是每三瓶我就加一瓶;假设现在有有a 瓶可乐,那么就有a / 3个可乐 和a% 3个可乐盖。可乐盖的总数是a/3+ a% 3
         *
         * 反过来,设定i++。不停的试最后的结果,得到结果就打印;
int num = 50;
                int i = 0;
                while(getp(i) + i < num){
                        i++;
                }
                System.out.println(i);
        }

        public static int getp(int i){
                if(i > 3){
                       
                        return  i/3 + getp(i / 3  + i % 3);        //把剩下的可乐和瓶盖产生的可乐传回!递归!
                }else{
                        return 0;
                }
        }


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马