[解题报告]11689 - Soda Surpler

题目大意

题目原文:http://uva.onlinejudge.org/external/116/11689.pdf

背景:

 

Tim 是一个非常爱喝汽水的人。由于他没有钱,所以他要喝汽水的唯一方法就是收集空汽水瓶子,然后拿去回收换取钱再去买新汽水来喝。除了他自己喝完的空瓶子,Tim也会到街上去收集别人喝完的空瓶子。有一天,他非常的渴,他要尽可能的喝汽水,直到他得不到任何一瓶为止。

输入:

输入的第1列有一个整数N,代表以下有多少组测试数据。
每组测试数据1列,含有 3个整数 e,f,c 。e(0 <= e < 1000)代表Tim一开始拥有的空瓶子数目,f(0 <= f < 1000)代表Tim在这一天他在街上收集到的空瓶子数目,c(1 < c < 2000)代表多少个空瓶子可以换一瓶新的汽水。
请参考SampleInput。

 

输出:

 对每一组测试数据输出一列,代表 Tim 可以喝到多少瓶汽水。

 

算法:

这也是比较简单的一道题,这道题目和我们老师组织ACM进行选拔的时候一样,记得那时候我做错了,原因是想得太简单了。

 

代码:

这里附上我的代码,你可以去这里提交你的代码验证你的代码是否正确。

View Code
#include<stdio.h>
int main(void)
{
    int n,a,b,c,d,sum,flag;
    scanf("%d",&n);
    while(n--)
    {
        sum=0;
        scanf("%d %d %d",&b,&d,&c);
        a=b+d;
        while(a)
        {
        flag=a/c;
        sum+=a/c;
        a=flag+a%c;
        if(a<c-1)break;
        else if(a<=c-1)break;
        }
        printf("%d\n",sum);
    }
    return 0;
}

 

 

转载于:https://www.cnblogs.com/qisong178878915/archive/2013/02/25/2932541.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值