CANDLES - Đốt nến
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte

Bạn bắt đầu với a cây nến đang cháy. Khi nến cháy hết chúng để lại sáp nến có thể sử dụng để tạo ra cây nến mới

Giả sử rằng để tạo ra được 1 cây nến mới bạn cần sử dụng sáp nến từ b cây nến đã đốt cháy, và bạn lại tiếp tục đốt cháy cây nến mới

Hãy viết chương trình tính xem tổng số cây nến mà bạn có thể đốt?

Ví dụ 

  • Với a = 1, b = 2, kết quả candles(a, b) = 1
  • Với a = 5, b = 2, kết quả candles(a, b) = 9
    Nếu bạn có 5 cây nến lúc đầu, cứ 2 cây nến lại tạo ra 1 cây nến mới thì tổng cộng bạn có thể đốt cháy 9 = 5 + 2 + 1 + 1 cây nến
    • Có 5 cây nến, đốt cháy cả 5, tạo thêm đc 2 cây mới và dư 1 sáp nến
    • Đốt cháy 2 cây nến mới, tổng cộng có 3 sáp nến. Bạn tạo thêm đc 1 cây nến và dư 1 sáp nến
    • Đốt cháy 1 cây nến mới, tổng cộng có 2 sáp nến. Bạn tạo thêm 1 cây nến và dư 0 sáp nến
    • Đốt cháy 1 cây nến mới, thu về 1 sáp nến. Bạn ko thể tạo thêm cây nến nào khác

Đầu ra/đầu vào

  • [Thời gian chạy] 0.5 giây

  • [Đầu vào] integer a

    a ≤ 1000

  • [Đầu vào] integer b

    Số sáp nến cần thiết để tạo ra cây nến mới
    2 ≤ b ≤ 1000

  • [Đầu ra] integer

    • Tổng số nến chúng ta có thể đốt

Ví dụ

  • input
    5 2
    output
    9
Back to Top