#5201. EDIST - Khoảng cách chỉnh sửa

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho hai chuỗi ký tự A B . Khoảng cách chỉnh sửa (Edit Distance) giữa A B là số phép biến đổi ít nhất để biến chuỗi A thành chuỗi B . Các phép biến đổi được phép là:

  1. Thêm (Insert): Thêm một ký tự vào một vị trí bất kỳ.
  2. Xóa (Delete): Xóa một ký tự ở một vị trí bất kỳ.
  3. Thay thế (Substitute): Thay thế một ký tự bằng một ký tự khác.

Mỗi phép biến đổi có chi phí là 1 . Hãy tính khoảng cách chỉnh sửa giữa hai chuỗi đã cho.

Dữ liệu:

  • Dòng đầu tiên chứa chuỗi A .
  • Dòng thứ hai chứa chuỗi B .
  • Cả hai chuỗi chỉ chứa các ký tự in hoa ('A'-'Z') và có độ dài từ 1 đến 2000 .

Kết quả: Một số nguyên duy nhất là khoảng cách chỉnh sửa giữa A B .

Ví dụ:

Dữ liệu:

SUNDAY
SATURDAY

Kết quả:

3

Giải thích: Xóa 2 ký tự A, T và sửa ký tự R thành N trong chuỗi thứ B .

Giới hạn:

  • 1 \le \text{length}(A), \text{length}(B) \le 2000