日期:2014-05-17  浏览次数:20411 次

1000瓶汽水,每喝3瓶赚一瓶,最终喝了多少瓶,剩几个空瓶?
题目:共有1000瓶汽水,每喝完后一瓶得到的一个空瓶子,每3个空瓶子又能换1瓶汽水,喝掉以后又得到一个空瓶子,问总共能喝多少瓶汽水,最后还剩余多少个空瓶子?

------解决方案--------------------

            int count = 10;
            int empty = 0;
            while (count > 0)
            {
                Console.WriteLine("喝一瓶饮料");
                empty++;
                count--;
                if (empty == 3)
                {
                    Console.WriteLine("3个空瓶子兑换一瓶饮料");
                    count += 1;
                    empty = 0;
                }
                Console.WriteLine("剩余饮料数:{0},剩余空瓶子:{1}", count, empty);
            }
            Console.Read();

------解决方案--------------------
简化一下:


            int count = 10;
            int flag = 3;
            int empty = count / flag + count % flag;
            while (empty >= flag)
            {
                empty = empty / flag + empty % flag;
            }
            Console.WriteLine("剩余饮料数:0,剩余空瓶子:{0}", empty);
            Console.Read();

------解决方案--------------------
        public int[] DrinkWater(int total)
        {
 &nbs