fzu 1150 Farmer Bill's Problem

Problem 1150 Farmer Bill's Problem

Accept: 877    Submit: 1805
Time Limit: 1000 mSec    Memory Limit : 32768 KB

 Problem 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?

 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

題意:
跟空瓶子換汽水一樣,k個菸頭換1個香菸
#include <queue>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define INF 0x3f3f3f
using namespace std;

int main(){
    int n,k,t,s;
    while(~scanf("%d%d",&n,&k)){
        s=n;
        while(n>=k){
            t=n/k;
            s+=n/k;
            n=n%k;
            n+=t;
        }
        printf("%d\n",s);
    }
    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章