5 3
 1000 3
 777 17
 4 3
 2 2
 100 4
 10 4
 999 2
 6 4
 1 2
 17 3
 1 4
 26 8
 91 5
 1 3
 1000 2
 20 3
 9 4
 123 5
 1000 1000
 3 2
 3 3
 80 970
 1000 4
 1 1000

7
 1499
 825
 5
 3
 133
 13
 1997
 7
 1
 25
 1
 29
 113
 1
 1999
 29
 11
 153
 1001
 5
 4
 80
 1333
 1

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;


public class A {

	static Scanner in = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
	
	private static int burnedCandles;
	private static int goodCandles;
	private static int conversion;
	
	public static void main(String[] args){

		int a = in.nextInt(); int b = in.nextInt();

		int ans = 0;
		burnedCandles = 0;
		goodCandles = a;
		conversion = b;

		while (goodCandles > 1){
			ans += burnGoodCandles();
			goodCandles = createNewCandles();
			burnedCandles = getRemainder();
		}

		System.out.println(ans + goodCandles);

	}

	public static int burnGoodCandles(){
		int retval = goodCandles;
		burnedCandles += goodCandles;
		goodCandles = 0;
		return retval;
	}

	public static int createNewCandles(){
		return burnedCandles / conversion;
	}

	public static int getRemainder(){
		return burnedCandles % conversion;
	}


}
