เต่าต้องการย้ายไปตามกริดเพื่อไปหาอาหารของเขา เขาต้องการที่จะรู้ว่ามันจะต้องใช้เวลาเท่าไรในการเดินทาง
เช่นกันเนื่องจากเขาทำงานช้าเขาจึงได้ติดตั้งเครื่องเคลื่อนย้ายมวลสารไว้รอบ ๆ โดเมนของเขาซึ่งเขาจะใช้ประโยชน์หากเส้นทางของเขาสั้นลง หรือหลีกเลี่ยงพวกเขาถ้ามันยาวเส้นทางของเขา
พบกับเต่า
🐢
ชีวิตเต่าบนตาราง
แต่เต่าไม่สามารถย้ายไปที่ตารางที่มีภูเขา
เต่าอยากจะกินสตรอเบอร์รี่ของเขาและอยากจะรู้ว่าวิธีการที่จะใช้เวลานานที่จะได้รับของเขาสตรอเบอร์รี่
ความท้าทาย
เมื่อกำหนดเอาท์พุทกริดเริ่มต้นจำนวนการเคลื่อนไหวก็จะนำเต่าไปถึงสตรอเบอร์รี่ของเขา
กฎระเบียบ
คุณอาจคิดว่ากริดอินพุตมีวิธีแก้ปัญหา
แต่ละตารางจะมีหนึ่ง
strawberry
และสองportals
และหนึ่งturtle
กริดอินพุตอาจถูกป้อนในรูปแบบที่สะดวก
คุณควรรักษา
teleporters
เป็นรายการใช้เพียงครั้งเดียวเลี้ยวที่ย้ายเต่าบนตารางที่เขามีอยู่แล้วในที่สอดคล้องกัน
teleporter
teleporter
เขาไม่เคยย้ายไปteleporter
และอยู่ที่นั่นเพื่อย้ายเส้นทางที่สั้นที่สุดไม่จำเป็นต้องใช้ประโยชน์จากพอร์ทัล
เต่าไม่สามารถผ่านเข้าไปในแผ่นกระเบื้องบนภูเขาได้
คุณอาจจะใช้อักขระ ASCII หรือจำนวนเต็มเพื่อเป็นตัวแทน
mountains
,turtle
,empty grid square
,strawberry
คุณสามารถใช้อักขระเดียวกันหรืออักขระ ASCII หรือตัวเลขสองตัวที่แตกต่างกันเพื่อแสดง
teleporter
คู่กริดสามารถมีมากกว่าหนึ่งพา ธ ที่มีความยาวพา ธ สั้นที่สุดเท่ากัน
นี่คือรหัสกอล์ฟ
ชี้แจงกฎ
- คุณควรรักษา
teleporters
เป็นรายการใช้เพียงครั้งเดียว
เหตุผล : มันก็ชี้ให้เห็นว่ากรณีของ:
สามารถแก้ไขได้โดยการเข้าและออกจากพอร์ทัลสองครั้งเท่านั้น ในช่วงเวลาของการทำให้ชัดเจนทั้งสองวิธีแก้ปัญหาโดยสมมติว่าพวกเขาใช้เพียงครั้งเดียวหรือไม่มีเหตุผลที่จะลองใช้ก่อนหน้านี้กำลังสอง เพื่อหลีกเลี่ยงการแก้ปัญหาการทำงานหนักของพวกเขานี่เป็นวิธีที่ดีที่สุดสำหรับการตั้งค่านี้ ดังนั้นจึงถือว่าเป็นตารางที่ไม่ถูกต้อง
กรณีทดสอบที่จัดรูปแบบเป็นรายการ
[ ['T', 'X', 'X', 'S', 'X'], ['X', 'X', 'X', 'X', 'X'], ['X', 'X', 'X', 'X', 'X'] ] --> 3
[ ['T', 'M', 'X', 'S', 'X'], ['X', 'M', 'X', 'X', 'X'], ['O', 'X', 'X', 'X', 'O'] ] --> 4
[ ['T', 'M', 'X', 'S', 'O'], ['O', 'M', 'X', 'X', 'X'], ['X', 'X', 'X', 'X', 'X'] ] --> 2
[ ['T', 'M', 'X', 'S', 'X'], ['O', 'M', 'X', 'X', 'X'], ['O', 'X', 'X', 'X', 'X'] ] --> 4
[ ['T', 'M', 'S', 'X', 'O'], ['X', 'M', 'M', 'M', 'M'], ['X', 'X', 'X', 'X', 'O'] ] --> 7
[ ['T', 'X', 'X', 'S', 'X'], ['O', 'M', 'M', 'M', 'X'], ['X', 'X', 'O', 'X', 'X'] ] --> 3
กรณีทดสอบที่จัดรูปแบบสำหรับมนุษย์
T X X S X
X X X X X
X X X X X --> 3
T M X S X
X M X X X
O X X X O --> 4
T M X S O
O M X X X
X X X X X --> 2
T M X S X
O M X X X
O X X X X --> 4
T M S X O
X M M M M
X X X X O --> 7
T X X S X
O M M M X
X X O X X --> 3
เครดิต
การออกแบบและโครงสร้างผ่าน: Hungry mouse โดย Arnauld
ความท้าทายที่เสนอแก้ไขคำแนะนำ: Kamil-drakari , เนื้อวัว