Giải trình
Các chỉnh sửa khoảng cách giữa hai chuỗi là một chức năng của số lượng tối thiểu có thể có của chèn, xóa, hoặc thay thế để chuyển đổi một từ vào một từ khác.
Chèn và xóa chi phí 1, và thay thế chi phí 2.
Ví dụ: khoảng cách giữa AB
và A
là 1, vì xóa chi phí 1 và chỉnh sửa duy nhất cần thiết là xóa B
ký tự.
Khoảng cách giữa CAR
và FAR
là 2, vì chi phí thay thế 2. Một cách khác để xem xét điều này là một lần xóa và một lần chèn.
Quy tắc
Đưa ra hai chuỗi đầu vào (tuy nhiên được cung cấp thuận tiện trong ngôn ngữ của bạn), chương trình của bạn phải tìm khoảng cách chỉnh sửa tối thiểu giữa hai chuỗi.
Bạn có thể giả sử rằng các chuỗi chỉ chứa các ký tự A-Z
và có ít hơn 100 ký tự và nhiều hơn 0 ký tự.
Đây là mã golf , vì vậy giải pháp ngắn nhất sẽ thắng.
Các trường hợp thử nghiệm mẫu
ISLANDER, SLANDER
> 1
MART, KARMA
> 5
KITTEN, SITTING
> 5
INTENTION, EXECUTION
> 8
levenshtein
xử lý các thay thế dưới dạng một chỉnh sửa (thay thế), không phải hai (xóa + chèn).