ZOJ_3568_Exchange for Cola(水题)

Exchange for Cola

Time Limit: 2 Seconds       Memory Limit: 65536 KB

The Cola company is holding a promotional activity that customers can exchange B bottles of Cola with A caps. Now guinao has N caps. Furthermore, guinao can ask mm to borrow him some caps for any times as long as guinao is able to return the caps borrowed after he has used these caps to exchange Cola without buying any other Cola. Please tell guinao how many number of Cola guinao can drink.

Input

This problem contains multiple test cases. Each case contains one line with three numbers NAB, (1 <= N <= 10^9, 1 <= B < A <= 10^9), which have already been mentioned above.

Output

Print exactly one line with the maximal number of Cola guinao can drink by exchanging caps for each test case.

Sample Input
1 2 1
9 7 2
Sample Output
1
2

题型:简单题


题意:

        可乐公司做活动,可以用a个瓶盖换b瓶可乐现在guinao有n个盖子,他能够在任何时候跟mm借一些盖子,但是前提是他在换完之后能够将盖子还给mm。问guinao最多能喝到多少瓶可乐。


分析:一次一次模拟,当他还不了借的盖子的时候就break。


代码:

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
    long long a,b,n;
    long long lend;
    long long ans;
    while(~scanf("%lld%lld%lld",&n,&a,&b)){
        ans=0;
        lend=0;
        while(1){
            if(n<a){
                lend=a-n;
                n=a;
            }
            int t=n;
            n=n%a+b*(n/a);
            if(n>=lend)
                ans+=b*(t/a),n-=lend;
            else break;
        }
        printf("%lld\n",ans);
    }
    return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值