• C#:1000瓶汽水,每喝3瓶赚一瓶,最终喝了多少瓶,剩几个空瓶?


    /*
    * 题目:共有1000瓶汽水
    * 每喝完后一瓶得到的一个空瓶子
    * 每3个空瓶子又能换1瓶汽水,喝掉以后又得到一个空瓶子,问总共能喝多少瓶汽水,最后还剩余多少个空瓶子?
    *
    */
     1 static void Main(){
    2 int qs = 1000; //1000瓶汽水
    3 int kp = 0; //空瓶
    4 int hd = 0; //喝掉
    5
    6 while(qs >= 1){
    7 kp++;
    8 if(kp == 3){
    9 qs++;
    10 kp=0;
    11 }
    12 hd++;
    13 qs--;
    14
    15 }
    16 Console.WriteLine("喝掉:{0}瓶\t空瓶:{1}个",hd,kp);
    17 }

    结果:

    喝掉:1499瓶     空瓶:2个

    逐推演算如下:

    1000瓶汽水:
    --------------------------
    1000%3 = 333   1    一次性喝掉1000瓶,可以换333瓶汽水,余1个空瓶 = 喝掉了1000瓶汽水
    333%3 = 111   0    333瓶汽水喝掉后换取111瓶汽水,余0个空瓶  = 共喝掉了1000+333 = 1333瓶汽水
    111%3 = 37     0    111瓶汽水喝掉后换取37瓶汽水,余0个空瓶   = 共喝掉了1333+111 = 1444瓶汽水
    37%3 = 12     1    37瓶汽水喝掉后换取12瓶汽水,余1个空瓶   = 共喝掉了1444+37 = 1481瓶汽水
    12%3 = 4     0    12瓶汽水喝掉后换取4瓶汽水,余0个空瓶      =共喝掉了1481+12 = 1493瓶汽水
    4%3 = 1      1    4瓶汽水喝掉后换取1瓶汽水,余1个空瓶      =共喝掉了1493+4 = 1497瓶汽水

                   1瓶汽水被喝掉,余1个空瓶           =共喝掉了1497+1 = 1498瓶汽水
                  空瓶累计为:4个,换1瓶汽水,余1个空瓶      =共喝掉了1498+1 = 1499瓶汽水

                  空瓶累计为:2个空瓶,无法兑换汽水      总计:1499瓶汽水,2个空瓶.
     

  • 相关阅读:
    <hdu2072>单词数(set容器,string类应用)
    志愿者选拔
    Game of Life
    <LightOJ 1338> Hidden Secret!
    Miss Kitty and Her Little Ice Cream Shop(水题)
    约瑟夫问题
    <FZU 1019>猫捉老鼠
    <cf>System of Equations(水题)
    Palindromic Numbers (III)(回文数,较麻烦)
    <cf>Solitaire(DFS or DP)
  • 原文地址:https://www.cnblogs.com/zuozuo/p/2182444.html
Copyright © 2020-2023  润新知