首页 > 其他 > 详细

The Coco-Cola Store

时间:2015-07-18 09:28:20      阅读:120      评论:0      收藏:0      [点我收藏+]

题目链接:http://acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=23309

题目大意:

      用3个空可乐瓶可以换取一瓶满的可乐,设拥有n(1<=n<=100)个空可乐瓶,求最多能喝到多少瓶可乐

      需要注意的是,假设拥有10个空瓶,先换3瓶可乐,喝完后拥有4个空瓶,再换取1瓶,喝完后有2个空瓶,这时可以借一个空瓶,用此时的3个空瓶换一瓶可乐,喝完归还瓶子,这样,10个空瓶可以喝到5瓶可乐。

      举例:

                  Sample Input
       3
       10
       81
       0
                 Sample Output
       1
       5
       40
题目分析:
   根据提示剩2个空瓶可以继续换得一瓶可乐,可以采用条件判别语句(while,if等),当空瓶数大于1时可以继续兑换,此时又要分两种情况讨论,空瓶数是否等于2,若是,则换取一瓶可乐后结束条件判别,否则继续。
   
源代码:
 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int n,k,count;
 6     while(cin>>n&&n)
 7     {   count=0;
 8         k=0;
 9         while(n>1)
10         {   if(n==2)//瓶子剩2个可借1饮1还1
11         {    ++count;
12              break;
13         }
14             k=n/3;
15             count+=k;//计算可换取的瓶子数
16             n=n-2*k;//计算兑换后剩下的空瓶数
17         }
18     cout<<count<<endl;
19     }
20     return 0;
21 }

 

 

 

The Coco-Cola Store

原文:http://www.cnblogs.com/huaszjh/p/4655806.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!