ฉันรัก> <>,> <> คือชีวิต! ค่าสองมิติน่าทึ่ง! ในการท้าทายนี้คุณจะต้องบอกว่าถนน "คาว" สิ้นสุดลงหรือไม่ในขณะที่เล่นกอล์ฟ
คำนิยาม
ถนนคาวถูกสร้างขึ้นด้วยกระเบื้องรวมถึงถนนต่อไปนี้:
v (go down)
> (go right)
^ (go up)
< (go left)
/ (mirror)
\ (mirror)
ตัวละครอื่น (ยกเว้น-|+
) อาจถูกมองว่าเป็นสิ่งที่ทำให้ไขว้เขวเช่นดอกไม้ (หรือหัวปลา) ที่ขอบถนน
ถนนจะเริ่มต้นที่มุมซ้ายบนของตารางสี่เหลี่ยมคั่นด้วย-|+
สัญลักษณ์ ถนนมีจุดจบถ้าคุณตามติดท้ายคุณจะต้องติดกับชายแดนไม่เช่นนั้นคุณจะถูกขังอยู่ในเส้นทางที่ไม่มีที่สิ้นสุด
การค้นหาเส้นทางของคุณทำได้โดยทำตามคำแนะนำv>^<
และกระจกเงา กระจกจะสะท้อน 90 °ขึ้นอยู่กับว่าคุณมาจากไหน นี่คือวิธีการใช้งาน (ใช้v>^<
เพื่อแสดงเส้นทาง):
^ ^
>/< >\<
v v
</> <\>
^ ^
ถนนอาจมีลักษณะเช่นนี้หากสิ้นสุด:
+--------------------+
|>\/ this way >\/> | this one ends here
| v^ \/ |
| v^ ^.^ |
| \/\ >v |
| /\/ ^< |
+--------------------+
วงวนไม่สิ้นสุด:
+--------+
|>>\ This|
|\\ is |
| \\ a |
| \ /trap|
+--------+
ข้อมูลจำเพาะ
ถนนไม่จำเป็นต้องมีคำแนะนำเท่านั้น สามารถใช้ช่องว่างหรือตัวอักษรเพื่อทำให้เสร็จ <v^>-|
ซึ่งหมายความว่าคุณจะต้องดำเนินการต่อไปในทิศทางเดียวกันยกเว้นถ้าคุณข้ามตัวละครใน
จะมีหนึ่งv>^<
ในมุมซ้ายบนเสมอ<
หรือ^
บอกเป็นนัยว่าถนนเส้นนี้สิ้นสุด
คุณอาจส่งฟังก์ชั่นที่ใช้สตริงเป็นพารามิเตอร์หรือโปรแกรมแบบสแตนด์อโลนโดยใช้ STDIN / อะไรก็ตามที่เป็นทางเลือกที่ใกล้เคียงที่สุดในภาษาของคุณ
การส่งของคุณจะต้องส่งคืนหรือพิมพ์ค่า STDOUT จริง / ค่าเท็จเมื่อเสร็จสิ้น ค่าความจริงหมายถึงถนนที่มีจุดจบในขณะที่ความเท็จหมายความว่ามันเป็นวงไม่สิ้นสุด
กรณีทดสอบ
+--------------------+
|>\/ this way >\/> | this one ends here
| v^ \/ |
| v^ ^.^ |
| \/\ >v |
| /\/ ><> ^< |
+--------------------+
True
+--------+
|>>\ This|
|\\ is |
| \\ a |
| \ /trap|
+--------+
False
+--+
|<v|
|^<|
+--+
True
+--+
|>v|
|^<|
+--+
False
+----------+
|v Hello \ |
|\\/\/ / |
| \/\\ \ |
|/ // >\ |
| ^/\>\\/ |
|\ /\/\/ |
+----------+
False
+-----+
|>\/\\|
|//\\/|
|\/\\\|
|//\//|
|\/\/ |
+-----+
True
2 test cases added as suggested by @MartinBüttner
+----+
|v |
|\\ |
|//\ |
|\\v |
| \/ |
+----+
False
+----+
|v |
|\\ |
|//\ |
|\\^ |
| \/ |
+----+
False
Test case inspired by @ETHproductions
+-------------------------+
|><> |
|something smells fishy...|
+-------------------------+
False
ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม (เช่นเคย)
ผู้ชนะจะได้รับรหัสที่สั้นที่สุดเป็นไบต์ (มันน่าอัศจรรย์ที่ได้เห็น> <> คำตอบ :))