zoukankan      html  css  js  c++  java
  • 11877 The Coco-Cola Store

           题目:    11877  The Coco-Cola Store

           Once upon a time, there is a special coco-cola store. If you return three empty bottles to the shop,
      you’ll get a full bottle of coco-cola to drink. If you have n empty bottles right in your hand, how many
      full bottles of coco-cola can you drink?


    Input
         There will be at most 10 test cases, each containing a single line with an integer n (1  n  100). The
      input terminates with n = 0, which should not be processed.

    Output
         For each test case, print the number of full bottles of coco-cola that you can drink.
     Spoiler
           Let me tell you how to drink 5 full bottles with 10 empty bottles: get 3 full bottles with 9 empty
      bottles, drink them to get 3 empty bottles, and again get a full bottle from them. Now you have 2
      empty bottles. Borrow another empty bottle from the shop, then get another full bottle. Drink it, and
      finally return this empty bottle to the shop!

    Sample Input
      3
      10
      81
      0
    Sample Output
     1
     5
     40

    思路:

    每次用现有的空瓶n除以3,商就是新的兑换数,余数加上商就是新的的空瓶数,如此循环到新的空瓶子数小于3时跳出循环。

    如果剩下两个空瓶,可以先借一瓶,再还空瓶。

    #include <iostream>
    using namespace std;
    int main()
    {
    int n,i,j,x,y,sum;
    cin>>n;
    while(n!=0)
    {
    sum=0;
    while(n>=3)
    {
    x=n%3;
    y=n/3;
    sum=sum+y;
    n=y+x;
    }
    if(n==2)
    sum++;
    cout<<sum<<endl;
    cin>>n;
    }
    return 0;
    }
    

      

  • 相关阅读:
    Docker 容器知识点
    Docker 常用命令
    杜教筛
    后缀自动机相关
    期望DP
    从零开始的莫比乌斯反演(函数)[详细推导]
    欧拉函数|(扩展)欧拉定理|欧拉反演
    优美诗词(持续更新)
    魔法 [线段树优化DP]
    stone2 [期望]
  • 原文地址:https://www.cnblogs.com/fenhong/p/4653668.html
Copyright © 2011-2022 走看看