ถึงเวลาสำหรับการท้าทายเขาวงกตอื่น แต่ไม่ใช่อย่างที่คุณรู้
กฎสำหรับความท้าทายนี้แตกต่างจากความท้าทายทางเขาวงกตเล็กน้อย ชนิดของกระเบื้องถูกกำหนดดังนี้:
S
: ตำแหน่งบนเขาวงกตที่คุณเริ่มต้นE
: สถานที่ที่คุณพยายามจะไป0
: กำแพงที่คุณไม่สามารถข้ามได้+
: ชั้นที่คุณสามารถข้ามได้
คุณสามารถเดินทางในหนึ่งในหกทิศทาง: จากซ้ายไปขวาขึ้นไปทางซ้ายขวาไปทางซ้ายหรือลงทางขวา
\ /
-S-
/ \
เขาวงกตไม่ห่อ เป้าหมายคือการหาสตริงเส้นทางที่สั้นที่สุดที่จะได้รับจากการS
E
การป้อนข้อมูล:
อินพุตคือเส้นที่คั่นด้วยช่องว่างเช่นเขาวงกตที่แสดง ไม่มีช่องว่างต่อท้ายจะเป็นไปตามบรรทัด
เอาท์พุท:
สตริงR
, L
และF
ที่
R
หมุนคุณไปทางขวา (ตามเข็มนาฬิกา) 60 องศาL
หมุนคุณไปทางซ้าย (ทวนเข็มนาฬิกา) 60 องศาF
ย้ายคุณไปหนึ่งช่องว่างในทิศทางที่คุณกำลังชี้
คุณเริ่มชี้ left-up
เส้นทางที่สั้นที่สุดจะถูกนับด้วยความยาวของสตริงที่ผลิตไม่ใช่จำนวนตำแหน่งที่เยี่ยมชม โปรแกรมของคุณจะต้องพิมพ์เส้นทางที่สั้นที่สุดเป็นวิธีแก้ปัญหา
Invalid maze!
ถ้าเขาวงกตเป็นปัญหาโลกแตกที่คุณควรเอาท์พุท
( >>>
คือผลลัพธ์)
0 0 0 0
0 + 0 + 0
0 0 0 + + 0
0 + 0 + 0 + 0
0 0 + + 0 0 + 0
0 0 + 0 + 0 0 + 0
E 0 + 0 0 + + 0
+ + 0 + 0 + 0
0 0 0 0 0 +
+ 0 + + +
0 S 0 0
>>>RFRFFLFLFRFFLFFFLFLFFRFLFLFRFRFRF
+ 0 0 0 0 0 0
0 0 0 0 0 + + 0
0 0 E 0 + 0 0 + 0
0 0 0 0 0 0 0 +
0 + 0 0 + + +
0 0 + + 0 0
S + 0 0 0
>>>Invalid maze!
0 E S
>>>LF
E + 0
0 + + +
0 0 S
+ +
>>>FFLF
E
0 +
0 + +
0 +
S
>>>RFFLFF
0 E + 0 0
0 + 0 0 + +
+ 0 + + + 0
+ 0 + 0 + 0
+ + + 0 S
>>>FFLFLFFRFRFFRFF
E 0 + + 0
0 + 0 + + 0
+ + + 0 + 0
+ 0 0 0 0 0
+ + + + 0
+ 0 S 0
>>>FLFFRFFRFLF
(โปรดทราบว่าเขาวงกตบางแห่งมีวิธีแก้ไขปัญหาอื่นที่มีความยาวเท่ากัน แต่ไม่มีอยู่ในรายการนี้)