黑马程序员技术交流社区

标题: 测试题9 [打印本页]

作者: 执剑人    时间: 2016-3-7 11:16
标题: 测试题9
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;
                }
        }







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2