#CCBOTPBA0000030. Mô phỏng khoản tiền tăng trưởng (Integer Growth Until Threshold)
Mô phỏng khoản tiền tăng trưởng (Integer Growth Until Threshold)
Mô phỏng khoản tiền tăng trưởng (Integer Growth Until Threshold)
Nguồn: Phước Hưng OJ
Phiên bản: Phước Hưng OJ Extended
Đề bài
Khoản tiền nguyên ban đầu là a, mục tiêu là b (a<b), tỷ lệ tăng trưởng năm là số nguyên p phần trăm. Cuối mỗi năm, số tiền được cập nhật thành floor(a*(100+p)/100); phần lẻ bị bỏ ngay trong năm đó. Đếm năm ít nhất để tiền đạt hoặc vượt b. Nếu tại một năm số tiền không tăng và vẫn dưới b, in -1 vì các năm sau cũng không tăng. Không cộng thêm tiền ngoài lãi.
Input
Ba số nguyên a b p.
Output
Số năm nhỏ nhất đạt ngưỡng, hoặc -1 nếu không thể.
Subtask
-
Subtask 1 (20%):
1 ≤ a < b ≤ 1000,0 ≤ p ≤ 100. -
Subtask 2 (30%):
1 ≤ a < b ≤ 10^6,0 ≤ p ≤ 100. -
Subtask 3 (50%):
1 ≤ a < b ≤ 10^9,0 ≤ p ≤ 100.
Ví dụ
Ví dụ 1
Input:
100 110 10
Output:
1
Giải thích: Sau một năm: floor(100×110/100)=110, vừa đạt mục tiêu.
Ví dụ 2
Input:
1 2 1
Output:
-1
Giải thích: floor(1×101/100)=1, tiền không tăng nên không thể đạt 2.
Ví dụ 3
Input:
100 120 10
Output:
2
Giải thích: Sau năm 1 có 110; sau năm 2 có 121, lần đầu vượt 120.