Đối với thử thách này, bạn cần nén một diff. Một khác biệt là một số dữ liệu đại diện cho sự khác biệt giữa hai chuỗi. Đối với thử thách này, bạn cần cung cấp một hoặc nhiều chương trình có thể:
- Đầu vào
A
vàB
, và đầu ra khác,C
- Đầu vào
A
vàC
, và đầu raB
- Đầu vào
B
vàC
, và đầu raA
Mục tiêu là làm cho diff C
, càng nhỏ càng tốt. Khác biệt có thể là bất cứ điều gì: một chuỗi, một số, một đốm dữ liệu. Chúng tôi chỉ quan tâm đến kích thước (số byte).
Tôi có 50 trường hợp thử nghiệm có thể tìm thấy trên Github . Mỗi trường hợp thử nghiệm bao gồm hai URL được phân tách bằng dấu cách trỏ đến 2 tệp bạn cần khác. (Những trường hợp thử nghiệm này có nguồn gốc từ hồ sơ Github của thành viên PPCG. Cảm ơn tất cả!)
Tất cả ba tác vụ trên phải mất dưới một phút để chạy trên máy tính có công suất hợp lý (đối với từng trường hợp thử nghiệm).
Điểm của bạn bằng tổng kích thước (tính bằng byte) của tất cả 50 khác, thấp hơn là tốt hơn. Hardcoding diffs trong chương trình của bạn không được phép (Tôi bảo lưu quyền thay đổi các trường hợp thử nghiệm để ngăn chặn mã hóa cứng). Nội dung tạo ra khác biệt (như diffutils
) không được phép.
A
vàB