2011年8月4日 星期四

[ACM 10346] Peter's Smokes

 內容 :

Peter有 支紙煙,他一支一支的抽並且把煙屁股留起來。當他有 k 支煙屁股(k>1)時他可以把它們捲成一支新的紙煙。

請問Peter共可以抽幾支紙煙?

輸入說明 :

每筆測試資料一列。每列有2個整數 n,k。

輸出說明 :

對每一列輸入,請輸出Peter共可以抽幾支紙煙。

範例輸入 :


4 3
10 3
100 5

 

範例輸出 :

5
14
124
 



/**********************************************************************************/
/*  Problem: c079 "Peter's Smokes" from ACM 10346                                 */
/*  Language: C                                                                   */
/*  Result: AC (26ms, 348KB) on ZeroJudge                                         */
/*  Author: diiuuli520 at 2008-07-17 23:05:48                                     */
/**********************************************************************************/
 
 
#include<stdio.h>
#include<stdlib.h>
 
int main(void)
    int a,b,c,x,y;
    while(scanf("%d%d",&a,&b)!=EOF){
        c=a;
        x=a;
        y=0; 
        do{
           c+=y; 
           y=c%b;
           c=c/b;
           x+=c;
            
        }while(c>0); 
            
        printf("%d\n",x); 
        } 
      return 0;
    }

沒有留言:

張貼留言