UVa Solution 10346 : Peter’s Smokes


The problem link is
 UVa 10346 : Peter’s Smokes 
Solution:
#include <stdio.h>
int main()
{
    long n,k,temp_n,temp_k;
    while(scanf("%ld %ld",&n,&k) == 2)
    {
        temp_n = n;
        temp_k = 0;
        while(k > 1)
        {
            if(temp_n == 0)
                break;
            else
            {
                temp_k += temp_n % k;
                temp_n = temp_n / k;
                n = n + temp_n;
                if(temp_n == 0 && temp_k >= k)
                {
                    temp_n = temp_k;
                    temp_k = 0;
                }
            }
        }
        printf("%ld\n",n);
    }
    return 0;
}

Run time: 0.009
User Name on UVA: refatsardar

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: