Điểm:
400
Thời gian:
2.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Có một tấm thẻ trên bàn, và bau đầu có một số \(s\) được viết trên nó, ở mỗi bước bạn có thể thực hiện \(1\) trong \(2\) phép toán sau:
-
Giả sử số ghi trên tấm thẻ là \(x\), thì thay nó bằng \(2 * x+1\)
-
Giả sử số ghi trên tấm thẻ là \(x\), thì thay nó bằng \(3 * x+1\)
Hỏi chúng ta cần thực hiện ít nhất bao nhiêu phép toán trên để thu được được số \(t\). Nếu không thể biến đổi \(s\) thành \(t\) in ra \(-1\).
Input
-
Dòng thứ nhất chứa số \(T(1\le T\le 30\)) - Thể hiện số testcase của bài toán
-
T dòng tiếp theo, mỗi dòng chứa hai số nguyên \(s,t(0\le s,t\le 10^6)\)
Output
- Ứng với mỗi testcase, in ra đáp án thỏa mãn yêu cầu bài toán
Example
Test 1
Input
2
1 3
3 15
Output
1
2
Bình luận
cái input hơi ác, có mấy cái xuống dòng ko đúng quy luật (test 1) :v
Là sao bạn ? Bạn có thể nói rõ để mình edit được không ? Mình thấy cái test 1 vẫn bình thường mà !
À dòng thứ 4 của test 1 đó anh, em thấy đáng lẽ phải có 2 số s,t mà số t nó bị xuống dòng. Không biết có phải do cách hiển thị ko? Cái ni mà mấy bạn dùng input().split() trong python 3 thì nó ko nhập giá trị đc
Trời lạnh quá trời lạnh quá
Đừng bỏ em một mình