Đưa ra một đầu vào của bất kỳ chương trình Glypho hợp lệ nào , hãy xuất đối tác "có thể đọc được" của nó.
Glypho là một ý tưởng esolang thú vị:
Các tài liệu tham khảo hướng dẫn được đưa ra ở đây. Đối với mỗi lệnh, abcd ký tự đại diện cho các ký hiệu sáng tác mỗi lệnh. a đề cập đến biểu tượng duy nhất đầu tiên, b đề cập đến biểu tượng duy nhất thứ hai, v.v.
aaaa ..... n NOP - no operation; do nothing aaab ..... i Input - push input onto top of stack aaba ..... > Rot - pops top stack element and pushes to bottom of stack aabb ..... \ Swap - swaps top two stack elements aabc ..... 1 Push - pushes a 1 onto the top of stack (creates new element) abaa ..... < RRot - pops bottom element and pushes to top of stack abab ..... d Dup - Duplicates top stack element abac ..... + Add - pops top two elements and pushes their sum abba ..... [ L-brace - skip to matching ] if top stack element is 0 abbb ..... o Output - pops and outputs top stack element abbc ..... * Multiply - pops top two elements and pushes their product abca ..... e Execute - Pops four elements and interprets them as an instruction abcb ..... - Negate - pops value from stack, pushes -(value) abcc ..... ! Pop - pops and discards top stack element abcd ..... ] R-brace - skip back to matching [
(tín dụng: Brian Thompson aka Wildhalcyon)
Vì vậy, ví dụ, PPCG
sẽ đại diện cho Đẩy instruction- PPCG
phù hợp với mô hình aabc
, nơi a
đại diện P
, b
đại diện C
và c
đại diện G
.
Đầu vào sẽ là một chuỗi duy nhất chỉ bao gồm các ký tự ASCII có thể in được. Nó sẽ luôn có độ dài chia hết cho bốn (duh).
Đầu ra là mỗi nhóm bốn ký tự trong chuỗi đầu vào được thay thế bởi lệnh mà chúng chỉ định. Sử dụng tên hướng dẫn một chữ cái (tên ngay sau năm dấu chấm trong bảng được trích dẫn ở trên).
Vì đây là môn đánh gôn , mã ngắn nhất tính bằng byte sẽ thắng.
Các trường hợp thử nghiệm:
In Out
------------------------------------------------
Programming Puzzles & Code Golof ]!]!]]]+
nananananananana batman! dddd]]
;;;;;;;:;;:;;;:: ni>\
llamas sleep 1-*
8488133190003453 <[oe
<empty string> <empty string>