Solution of 11689 - Soda Surpler

Problem Description
source:https://uva.onlinejudge.org/external/116/11689.html


Tim is an absolutely obsessive soda drinker, he simply cannot get enough. Most annoyingly though, he almost never has any money, so his only obvious legal way to obtain more soda is to take the money he gets when he recycles empty soda bottles to buy new ones. In addition to the empty bottles resulting from his own consumption he sometimes find empty bottles in the street. One day he was extra thirsty, so he actually drank sodas until he couldn’t afford a new one.


Input 

The first line of the input file contains an integer N (N < 15) which denotes the total number of test cases. The description of each test case is given below: 
Three non-negative integers e, f, c, where e < 1000 equals the number of empty soda bottles in Tim’s possession at the start of the day, f < 1000 the number of empty soda bottles found during the day, and 1 < c < 2000 the number of empty bottles required to buy a new soda. 

Output 

For each test case print how many sodas did Tim drink on his extra thirsty day? Look at the sample output for details. 

Sample Inpu


9 0 3 
5 5 2 

Sample Output 


9


Solution:
#include<stdio.h>

int main()
{
    int n, e, f, c, get, result,total,i;

    while(scanf("%d",&n)==1)
    {
        for(i=1;i<=n;i++)
        {
            scanf("%d%d%d",&e,&f,&c);
            total=e+f;
            get=0;
            get=total/c+total%c;
            result=total/c;
            while(get>=c)
            {
                result+=get/c;
                get=get/c+get%c;
            }
            printf("%d\n",result);
        }
    }
    return 0;
}

No comments:

Post a Comment

Write your comment - Share Knowledge and Experience