Super Mario Galaxy có haihành tinh hình thoi * hình thoi * được lát bằng các nền tảng co lại khi Mario chạy ngang qua. Nếu Mario rơi vào một lỗ hình tam giác hoặc một khoảng trống do một viên gạch mà anh ta chạm vào trước đó, anh ta sẽ bị lỗ đen ở lõi tiêu thụ. (Xem: Galaxy Hurry-Scurry , Sea Slide Galaxy )
Hình: MarioWiki.com
(Bạn có thể nghĩ hành tinh này là một khối lập phương 2x2x2 có các mặt được tách ra và kết nối với nhau bằng các "cầu nối" 2x3.)
Thật không may, vì bộ điều khiển của tôi rất hỏng, Mario không thể nhảy và bị giới hạn ở bốn hướng chính. Ngoài ra, Mario di chuyển rất chậm và không thể lấy lại dù chỉ một bước mà không có nền tảng phía sau biến mất.
Giả sử máy ảnh luôn ở trên đầu của Mario và anh ta bắt đầu ở phía dưới bên phải của khuôn mặt 2x2:
■ ■
■ ■
■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ M ■ ■ ■
■ ■
■ ■
■ ■
Chương trình của bạn sẽ lấy một danh sách hoặc chuỗi chỉ đường, U
D
L
R
(lên, xuống, trái, phải), đại diện cho Mario đi vòng quanh hành tinh cho đến một loạt các bước. Chương trình có thể tạo ra một trong hai kết quả đầu ra khác nhau: một đại diện cho thấy Mario vẫn còn sống và đang đi bộ, và một đại diện khác cho thấy ở đâu đó trên đường đi bộ, Mario đã rơi vào Vệ tinh thu nhỏ.
RR: ■ ■ RRD: ■ ■ RRL: ■ ■
■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ □ □ M ■ ■ ■ ■ ■ □ □ □ ■ ■ ■ ■ ■ □ M □ ■
■ ■ \ ■ ■ M ■ ■ \
■ ■ Let's-a go! ■ ■ \ ■ ■ W-aaaaaaaaaahh!
■ ■ ■ ■ W-aaaaaaaaaahh! ■ ■
Tất nhiên, không giống như các sơ đồ trên, bạn sẽ phải tính đến 3D. Đây là một sơ đồ có thể giúp bạn hình dung kịch bản tốt hơn:
Top 2x2 face
<- clockwise anticlockwise ->
- ■ - ■ - ■ - ■ -
/ \ / \ / \ / \
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Left and right
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ M ■ ■ ■ ■ ■ ■ ■ ■ ■ edges wrap around.
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
\ / \ / \ / \ /
- ■ - ■ - ■ - ■ -
<- anticlockwise clockwise ->
Bottom 2x2 face
Vì vậy, theo sơ đồ này, UUUUURRRR
có thể trông như thế này:
- ■ - ■ - □ - ■ -
/ \ / \ / \ / \
■ ■ ■ ■ □ □ ■ ■
■ ■ ■ ■ □ □ ■ ■
■ ■ ■ ■ □ □ ■ ■
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ □ ■ ■ ■ M ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ □ ■ ■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
\ / \ / \ / \ /
- ■ - ■ - ■ - ■ -
Và UUUUUUUUULURRRRRR
có thể trông như thế này:
- ■ - ■ - □ - □ -
/ \ / \ / \ / \
■ ■ ■ ■ □ ■ ■ □
■ ■ ■ ■ □ ■ ■ □
-> □ ■ ■ ■ □ ■ ■ □ ->
<- □ ■ ■ ■ ■ ■ ■ ■ ■ ■ □ ■ ■ ■ M □ □ □ □ □ <-
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ □ ■ ■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
\ / \ / \ / \ /
- ■ - ■ - ■ - ■ -
Có thể chương trình ngắn nhất tính bằng byte w-aaaaaaaaaahh!
Các trường hợp thử nghiệm
Đầu ra 1: Vẫn còn sống
DDDDDLUUUUU
- Mario đi qua một cây cầu và trở lại.
RRRRDDDDLLL
- Mario đi trong một hình tam giác.
LLLLLLUUUUUURRRRR
- Mario đi trong một hình tam giác lớn hơn.
ULLDRDDDRU
- Mario đặt mình vào tình trạng nguy hiểm.
RURDRURDRDLDRDLDLDLULDLLLLLLLLLLLLLLLLURRRRRRRRRRRRRR
- Mario đi một con đường độc đáo ... và rơi vào tình trạng nguy hiểm.
Mario vượt qua mọi ô chính xác một lần.
DDDDLUUUULLLLDDDLUUULLLLDDDDLUUUULLLLDDDLUUULLLURRRUUURDDDRRRRUUURDDDRRRRUUURDDDRRRRUUUUURDDDDD
DLDRDLDLLLDRRRDDDDLLLLLLLLLDRRRRRRRRRDDDDLLLDRRRDDDRUUURRRRULLLLUUUURRRULLLUUUUURDRURDRUURULURU
Kết quả 2: W-aaaaaaaaaahh!
LLR
- Mario cố gắng lấy lại một bước và rơi xuống.
UULDR
- Mario cố gắng vượt qua một viên gạch hai lần và bước lên không trung.
RRDDDDD
- Mario đi ra khỏi cây cầu ở D đầu tiên (bỏ qua mọi bước sau).
RRRRDDDDLLLL
- Mario đi trong một hình tam giác và rơi qua gạch bắt đầu.
LLLLLLUUUUUURRRRRR
- Mario đi trong một hình tam giác lớn hơn và rơi qua gạch bắt đầu.
UUUUUUUUUUUUUUUUUUUU
- Mario đi bộ khắp hành tinh và rơi qua viên gạch bắt đầu.
RURDRURDRDLDRDLDLDLULDLLUU
- Mario đi một con đường độc đáo và trở nên mất phương hướng.
Mario, nhận ra sự nguy hiểm mà anh ta đang ở, không còn lựa chọn nào khác.
ULLDRDDDRUUU
ULLDRDDDRUUL
ULLDRDDDRUUR
ULLDRDDDRUUD
RURDRURDRDLDRDLDLDLULDLLLLLLLLLLLLLLLLURRRRRRRRRRRRRRR
RURDRURDRDLDRDLDLDLULDLLLLLLLLLLLLLLLLURRRRRRRRRRRRRRU
RURDRURDRDLDRDLDLDLULDLLLLLLLLLLLLLLLLURRRRRRRRRRRRRRL
RURDRURDRDLDRDLDLDLULDLLLLLLLLLLLLLLLLURRRRRRRRRRRRRRD
Cuối cùng, sao chép bất kỳ trường hợp thử nghiệm nào từ "Mario vượt qua mọi ô chính xác một lần" và thay đổi hoặc thêm một bước ngẫu nhiên. Mario nên gục ngã. (Nếu bạn thêm một bước vào cuối, Mario rơi xuống để lấy Ngôi sao quyền lực!)
* Khối lập phương sẽ là một thuật ngữ chính xác hơn vì một số khuôn mặt không vuông, nhưng bạn phải thừa nhận - "rhombicuboctahedron" chảy đẹp hơn.
R
. Tôi đã làm việc này trên giấy để đảm bảo mã của tôi là chính xác.