喝了多少饮料

设计 Java 程序,假设有 50 瓶饮料,喝完三个空瓶可以换一瓶饮料,依次类推,请问总共喝了多少饮料

    public static void main(String[] args) {
        /**
         * 设计 Java 程序,假设有 50 瓶饮料,喝完三个空瓶可以换一瓶饮
         * 料,依次类推,请问总共喝了多少饮料 74
          */
       int water = 50;
//      第一种:
//       int n=0;
//       while (true) {
//           //开始喝水:
//           water-=2;
//           n++;
//           if (water<3) {
//               System.out.println(n+50);
//               return;
//           }
//       }
        //第二种:
        water(0,water);
    }

    public static void water(int count,int water){
        if (water<3) {
            //剩余饮料
            count+=water;
            System.out.println(count);
            return;
        }
        int remainWater = water%3;
        int newWater = water/3;
        count += water - remainWater;
        newWater += remainWater;
        water(count,newWater);
    }
posted @ 2020-09-18 08:56  brx_blog  阅读(160)  评论(0编辑  收藏  举报