
snailCrawling
Có một con sên mỗi ngày đi được 1 mét. Biết rằng cứ mỗi khi bò được n
ngày thì có 1 ngày để con sên dừng lại nghỉ chân. Hỏi đến ngày thứ bao nhiêu thì con sên bò đến đích biết đích cách điểm xuất phát k
mét. Nếu con sên không thể bò tới đích thì trả về -1
.
Ví dụ:
- Với
n = 2, k = 3
thìsnailCrawling(n, k) = 4
Giải thích: Sau 2 ngày thứ 1 và 2 thì con sên đi được 1 + 1 = 2
mét, đến ngày thứ 3 thì con sên nghỉ ngơi, sau đó đến ngày thứ 4 thì con sên đi tiếp 1 mét là đến đích. Tổng cộng là cần 4
ngày để tới đích.
- Với
n = 5, k = 24
thìsnailCrawling(n, k) = 28
Đầu vào/Đầu ra:
- [Giới hạn thời gian chạy] 0.1 giây với C++, 0.6 giây với java và C#, 0.8 giây với Python, Go và JavaScript.
- [Đầu vào] Integer n, k
0 ≤ n, k ≤ 109
- [Đầu ra] Integer
Số ngày để con sên bò tới đích. Nếu con sên không thể tới đích thì trả về-1
.
Post Comment