Peter's smokes
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 16026 | Accepted: 6499 |
Description
Peter has n cigarettes. He smokes them one by one keeping all the butts. Out of k > 1 butts he can roll a new cigarette.
How many cigarettes can Peter have?
How many cigarettes can Peter have?
Input
Input is a sequence of lines. Each line contains two integer numbers giving the values of n and k.
Output
For each line of input, output one integer number on a separate line giving the maximum number of cigarettes that Peter can have.
Sample Input
4 3 10 3 100 5
Sample Output
5 14 124
Source
今天好像做太多水题了~
#include<iostream>
#include<cstdlib>
#include<stdio.h>
#define ll __int64
using namespace std;
int main()
{
ll n,k;
while(scanf("%I64d%I64d",&n,&k)!=EOF)
{
ll count=n;
while(1)
{
ll x=n/k;
count+=x;
n=x+n%k;
if(n<k)
break;
}
cout<<count<<endl;
}
}