Nhiệm vụ
Trong thử thách này, nhiệm vụ của bạn là viết ba chương trình tạo thành một loại hệ thống giống nhau. Hãy gọi các chương trình A
, B
và C
. Nếu một trong các chương trình được cung cấp nguồn của chương trình khác làm đầu vào, thì nó sẽ xuất nguồn của chương trình thứ ba. Ví dụ, nếu A
được đưa ra B
làm đầu vào, nó xuất ra C
. Nếu các chương trình được cung cấp nguồn riêng của họ như là đầu vào, họ có trách nhiệm đầu ra ba chuỗi "three"
, "mutual"
và "quines"
(không có dấu ngoặc kép). Trong mọi trường hợp, họ có thể xuất thêm một dòng mới. Đối với bất kỳ đầu vào nào khác, các chương trình có thể làm bất cứ điều gì, kể cả sự cố.
Thí dụ
Ví dụ, giả sử rằng các mã nguồn A
, B
và C
là aSdf
, ghJk
và zxcV
. Sau đó, các chương trình nên hành xử như sau.
Source Input Output
--------------------
aSdf aSdf three
aSdf ghJk zxcV
aSdf zxcV ghJk
ghJk aSdf zxcV
ghJk ghJk mutual
ghJk zxcV aSdf
zxcV aSdf ghJk
zxcV ghJk aSdf
zxcV zxcV quines
Quy tắc và tính điểm
Các giải pháp A
, B
và C
có thể là chức năng hoặc các chương trình đầy đủ, nhưng họ phải hoàn toàn độc lập: không có mã được chia sẻ được cho phép.
Các quy tắc chuẩn và quy tắc chuẩn được áp dụng, vì vậy các chương trình không thể truy cập mã nguồn của riêng họ theo bất kỳ cách nào.
Điểm số của bạn là số lượng byte kết hợp của A
, B
và C
, điểm số thấp hơn là tốt hơn.
public static void main
phần ở đâu đó.) Hoặc chỉ là bạn không thể viết một hàm được gọi bởi cả ba?