Trong một tệp duy nhất, viết chương trình không yêu cầu đầu vào và không tạo đầu ra. Khi chạy, nó sẽ đảo ngược tên của tệp mà nó được chứa trong đó, bất kể tên đó là gì , mà không làm thay đổi mã hoặc tạo ra các tác dụng phụ kéo dài khác.
Bất kỳ cách nào để đạt được điều này là tốt. Điều quan trọng là một khi chương trình được chạy, thay đổi duy nhất là tên tệp của nó đã bị đảo ngược. ví dụ: không có tập tin mới nào trong thư mục
Chạy chương trình một lần nữa nên đảo ngược tên trở lại. Thật vậy, chương trình sẽ có thể được chạy tùy ý nhiều lần.
Đối với mục đích của thách thức này:
- Bạn có thể giả sử tên tệp luôn là chuỗi các chữ cái viết thường (az) dài từ 1 đến 127 ký tự. (Nếu ngôn ngữ của bạn yêu cầu các tệp phải có tiện ích mở rộng để chạy thì chỉ cần đảo ngược phần trước phần mở rộng, ví dụ
mycode.bat
→edocym.bat
.) - Bạn có thể giả sử tệp mã nằm trong một thư mục để nó không có xung đột đặt tên (ngoại trừ chính nó).
- Bạn có thể không cho rằng tên tệp không phải là một bảng màu, tức là giống nhau khi bị đảo ngược. Tên tập tin là palindromes nên hoạt động tốt như những tên không.
- Bạn có thể đọc nội dung hoặc siêu dữ liệu của tệp. Không có hạn chế quine ở đây.
- Bạn có thể cho rằng chương trình của bạn sẽ được chạy trên một hệ điều hành phổ biến, hiện đại (cụ thể là Windows / Linux), vì không phải tất cả các hệ vỏ đều có cùng một bộ lệnh.
Như một ví dụ cụ thể, giả sử bạn có một chương trình Python trong một tệp được gọi
mycode
trong thư mục riêng của nó. Đang chạypython mycode
trong thiết bị đầu cuối sẽ dẫn đến tên tệp được đảo ngược thành
edocym
. Tệpedocym
phải ở một mình trong thư mục của nó - không có tệp nào được đặt tênmycode
nữa. Đang chạypython edocym
sẽ đảo ngược tên trở lại
mycode
, tại đó quá trình có thể được lặp lại vô thời hạn.Nếu cùng một tệp Python đã được đổi tên
racecar
(không thay đổi mã) và sau đó chạypython racecar
không có gì thay đổi rõ rệt vì "racecar" là một bảng màu. Điều đó cũng tương tự nếu tên tệp là, nói,
a
hoặcxx
.
Mã ngắn nhất tính bằng byte thắng. Tiebreaker là câu trả lời bình chọn cao hơn.