Cho biết hai số nguyên dương \(a\) và \(b\). Bạn được phép thực hiện hai loại phép toán sau đây:
1) Thay \(a\) bằng \(a\ DIV\ b\) (tức là thay \(a\) bằng phần nguyên của kết quả phép chia \(a\) cho \(b\))
2) Tăng \(b\) lên 1 đơn vị.
Cần thực hiện tối thiểu bao nhiêu phép toán thuộc hai loại nói trên để biến đổi \(a = 0\).
Dữ liệu vào:
Dòng đầu chứa số nguyên \(t\) \((0 < t \leq 100)\) là số bộ dữ liệu kiểm tra. Tiếp theo là \(t\) bộ dữ liệu, mỗi bộ dữ liệu gồm một dòng chứa lần lượt hai số nguyên \(a,\ b\) cách nhau một khoảng trắng mô tả hai giá trị ban đầu của \(a\) và \(b\).
Kết quả:
Tương ứng với mỗi bộ dữ liệu vào, chương trình của bạn cần in ra một dòng chứa một số nguyên duy nhất là số phép toán tối thiểu cần thực hiện để \(a = 0\). Trật tự in kết quả tương ứng với trật tự dữ liệu vào.
Ràng buộc:
+ Có 50% số test ứng với 50% số điểm của bài với \(0 \leq a \leq 10^{3},\ 0 < b \leq 10^{3}\);
+ Có 50% số test ứng với 50% số điểm của bài với \(0 \leq a \leq 10^{14},\ 0 < b \leq 10^{14}\).
Ví dụ:
Input | Output |
---|---|
4 9 2 1337 1 1 1 50000000 4 | 4 9 2 12 |
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38904 |