กำหนดอินพุตของชุดอักขระที่แสดงถึงการเคลื่อนไหวบนกริดหกเหลี่ยมเอาท์พุทพิกัดสุดท้ายของ "พอยน์เตอร์"
รูปหกเหลี่ยมของเราจะมีหมายเลขเป็นอย่างนั้น (ลองนึกภาพสี่เหลี่ยมกริดที่มีคอลัมน์เลขคี่ทุกคอลัมน์เลื่อนลงด้านล่างเล็กน้อย):
  _____         _____         _____         _____
 /     \       /     \       /     \       /     \
/ -3,-2 \_____/ -1,-2 \_____/  1,-2 \_____/  3,-2 \
\       /     \       /     \       /     \       /
 \_____/ -2,-1 \_____/  0,-1 \_____/  2,-1 \_____/
 /     \       /     \       /     \       /     \
/ -3,-1 \_____/ -1,-1 \_____/  1,-1 \_____/  3,-1 \
\       /     \       /     \       /     \       /
 \_____/ -2,0  \_____/  0,0  \_____/  2,0  \_____/
 /     \       /     \       /     \       /     \
/ -3,0  \_____/ -1,0  \_____/  1,0  \_____/  3,0  \
\       /     \       /     \       /     \       /
 \_____/ -2,1  \_____/  0,1  \_____/  2,1  \_____/
 /     \       /     \       /     \       /     \
/ -3,1  \_____/ -1,1  \_____/  1,1  \_____/  3,1  \
\       /     \       /     \       /     \       /
 \_____/       \_____/       \_____/       \_____/
ตัวชี้เริ่มต้นที่ (0, 0)
คำแนะนำที่คุณต้องสนับสนุนมีดังนี้:
q: เลื่อนไปทางซ้ายw: ขยับขึ้นe: เลื่อนขึ้นไปทางขวาa: เลื่อนลงไปทางซ้ายs: ย้ายลงd: เลื่อนลงไปทางขวาr: หมุนกริดตามเข็มนาฬิกาR: หมุนกริดทวนเข็มนาฬิกา
คำสั่งการหมุนจะหมุนกริดทั้งหมดในขณะที่รักษาตัวชี้ไว้ที่พิกัดเดียวกัน (เพราะqweasdอะไรพวกเขาเข้ากันได้กับทิศทางอย่างดีบนคีย์บอร์ด QWERTY)
เพื่อช่วยให้เห็นภาพนี้นี่คือสิ่งที่คำสั่งการเคลื่อนไหวจะทำสมมติว่าตัวชี้เริ่มตรงกลาง:
         _____
        /     \
  _____/   w   \_____
 /     \       /     \
/   q   \_____/   e   \
\       /     \       /
 \_____/       \_____/
 /     \       /     \
/   a   \_____/   d   \
\       /     \       /
 \_____/   s   \_____/
       \       /
        \_____/
หลังจากการหมุนตามเข็มนาฬิกา ( r) คำสั่งจะถูกแมปอีกครั้ง (ลองจินตนาการว่ามันเป็นการหมุนทั้งกริดฐานสิบหก แต่ยังคงรักษา "w" ไว้เช่น ฯลฯ ซึ่งเทียบเท่ากับสิ่งต่อไปนี้):
         _____
        /     \
  _____/   e   \_____
 /     \       /     \
/   w   \_____/   d   \
\       /     \       /
 \_____/       \_____/
 /     \       /     \
/   q   \_____/   s   \
\       /     \       /
 \_____/   a   \_____/
       \       /
        \_____/
ในทำนองเดียวกันการหมุนทวนเข็มนาฬิกา ( R) หลังจากนั้นจะกลับไปที่ตารางปกติและหมุนทวนเข็มนาฬิกาอีกครั้งจะ "remap" เพื่อqwedsaaqweds
ต้องป้อนข้อมูลเป็นสตริงเดียวและเอาต์พุตสามารถเป็นสตริงเดี่ยวที่เข้าร่วมโดยอักขระที่ไม่ใช่ตัวเลข (เช่น1 2หรือ3,4) หรืออาร์เรย์ของจำนวนเต็ม
เนื่องจากนี่คือcode-golfรหัสที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ
กรณีทดสอบ:
In                         Out
---------------------------------
edeqaaaswwdqqs             -2, 0
dddddddddd                 10, 5
wswseaeadqdq               0, 0
<empty string>             0, 0
esaaqrweesrqrq             -1, 0
wrwrwrwrw                  -1, 0
RRssrrrs                   -1, -1
aRRRRwddrqrrqqq            -1, -4
rrrrrrrrrrrrRRRRRRrrrrrrq  -1, -1
rrRrRrrRrrrrRRrRrRR        0, 0