Nhiệm vụ của bạn là tạo một chương trình trong đó nếu bất kỳ một ký tự nào bị xóa, nó sẽ phát hiện ký tự nào đã bị xóa và sau đó chèn lại ký tự đã xóa trong tệp nguồn của chính nó.
Ví dụ, nếu chương trình của bạn RadiationHardened
và nó được sửa đổi RadiaionHardened
, thì chương trình của bạn phải xuất ra rằng byte thứ 5 (được lập chỉ mục 0) đã được sửa đổi và sau đó nguồn chương trình phải RadiationHardened
ngay lập tức sau khi thực hiện.
Ghi chú và quy tắc
- Bạn có thể cho rằng chính xác một ký tự đã bị xóa trong mã nguồn trước khi thực hiện. Hành vi cho chương trình chưa sửa đổi là không xác định.
- Bạn có thể giả sử byte thay đổi sẽ bị xóa, không được chuyển đổi, chèn hoặc thay thế.
- Trong trường hợp chạy nhiều nhân vật giống nhau, bạn có thể báo cáo chỉ số đầu tiên hoặc chỉ mục cuối cùng của lần chạy, nhưng phải nhất quán về việc bạn sử dụng. Ví dụ:
baaad
bị xóa đểbaad
có thể báo cáo 1 hoặc 3 (không được lập chỉ mục), nhưng phải giống nhau trong toàn bộ chương trình. - Bạn không cần phải viết toàn bộ nguồn vào tệp riêng của nó. Bạn chỉ cần chèn lại byte đã xóa.
- Không giống như các quy tắc điển hình cho các loại thuốc được làm cứng bằng bức xạ, việc phát hiện byte đã thay đổi khi đọc mã nguồn của chương trình là trò chơi công bằng.
- Bạn có thể xuất chỉ mục byte đã thay đổi thông qua bất kỳ định dạng hợp lý nào. Hãy nhất quán về việc nó là 0-index hay 1-index hay bất kỳ ký hiệu nào khác. Bạn thậm chí có thể xuất một số trong một chuỗi mẫu.
Đây là môn đánh gôn nên chương trình ngắn nhất sẽ thắng.
Chúc may mắn!
EDIT1: thay đổi yêu cầu từ thay thế sang xóa
EDIT2: quy tắc được thêm vào để chạy các bản sao
code-challenge
nơi mỗi chương trình được phép khai báo danh sách các byte được bảo vệ chống lại phóng xạ (nhưng không quá - giả sử - 50% tổng kích thước). Một hệ thống tính điểm đơn giản có thể đếm mỗi byte được bảo vệ bằng bức xạ là 10 byte hoặc tương tự.
*
lệnh của nó sẽ giết chết tất cả các IP. Hồng y không thể làm điều đó, bởi vì@
.