
passwordLock
Bé Misa có một ổ khóa được mở bằng mật khẩu số.
Ở trên ổ khóa có n vòng xoay và mỗi vòng xoay được đánh số từ 0
đến 9
. Sau khi cài đặt mật khẩu xong, Misa muốn mở khóa ra với mật khẩu đã biết.
Cho chuỗi a
là trạng thái ổ khóa hiện tại, chuỗi b
là mật mã của ổ khóa.
Hãy giúp bé Misa tìm số bước xoay ít nhất tại mỗi vòng xoay để tiết kiệm thời gian khi mở khóa.
Ví dụ:
- Với
a = "194", b = "132"
, thìpasswordLock(a,b)=6.
Giải thích: Misa cần6
bước để mở khóa đó là:- Với chữ số thứ
1
đã đúng với mật mã nên không cần xoay. - Với chữ số thứ
2
bé Misa sẽ xoay4
bước là:9
->0
->1
->2
->3
. - Với chữ số thứ
3
bé Misa sẽ xoay2
bước là:4
->3
->2
.
- Với chữ số thứ
Đầu vào/Đầu ra:
- [Thời gian] 0.1s với C++, 0.6s với Java và C#, 0.8s với Python, Go và JavaScript.
- [Đầu vào] String s
1 ≤ s.length ≤ 1000.
- [Đầu ra] Integer.
Số bước xoay ít nhất để bé Misa mở được ổ khóa.
Post Comment