ต้องขอบคุณชุมชน PPCG ตอนนี้ซานต้าจึงมีรถเข็นจัดเก็บของเขาสมดุล ตอนนี้เขาต้องการย้ายพวกเขาไปยังท่าเรือขนส่งเพื่อให้พวกเขาสามารถส่งไปยังอ่าวโหลด โชคไม่ดีที่แทร็คที่จะย้ายเกวียนเป็นเรื่องยุ่งเหยิงและเขาต้องการที่จะเข้าใจว่าจะนำพวกมันไปรอบ ๆ ได้อย่างไรโดยที่พวกเขาไม่ชนกัน!
ท้าทาย
คุณจะได้รับแทร็กสำหรับรถเข็นแต่ละรายการเป็นรายการของ "ป้ายกำกับ" (หรือสถานี) รถเข็นต้องเคลื่อนย้ายโดยไม่ต้องมีรถเข็นสองคันอยู่บนฉลาก / สถานีเดียวกัน โดยพื้นฐานแล้วรถเข็นจะเลื่อนไปมาระหว่างตำแหน่งที่แต่ละป้ายมีป้ายกำกับที่ไม่ซ้ำกัน
งาน
กำหนดแทร็กสำหรับรถเข็นแต่ละคันให้เป็นรายการของป้ายกำกับ (ซึ่งเป็นจำนวนเต็มบวกทั้งหมด) กำหนดว่าควรปล่อยรถเข็นแต่ละคันเมื่อใดเพื่อส่งรถเข็นทั้งหมดไปยังจุดหมายปลายทางอย่างปลอดภัยในเวลาอันสั้นที่สุด
นี่คือคำอธิบายว่าระบบติดตามทั้งหมดทำงานอย่างไร รถเข็นพูด Let 's i
ถูกปล่อยออกมาในเวลาที่เข้าสู่การติดตามที่มีป้ายกำกับt_i
T_i_1, T_i_2, ..., T_i_n
จากนั้นในระหว่างt_1
ถึงt_i-1
รถเข็นi
ไม่ได้อยู่ในกริดและสามารถละเว้นได้
ในกรอบเวลาที่t_i
รถเข็นที่อยู่บนฉลากT_i_1
และสำหรับกรอบเวลาในแต่ละt_k
จากt_i
ไปt_i+n
(ครึ่งรวม) T_i_k+1
รถที่อยู่บนฉลาก
สำหรับกรอบเวลาทั้งหมดหลังจากและรวมถึงt_i+n
รถเข็นอยู่ที่ปลายทางและไม่อยู่ในกริดอีกต่อไป
จำนวนเวลาทั้งหมดที่t_T
ใช้คือกรอบเวลาสุดท้ายที่รถเข็นยังคงติดตามอยู่ในระบบ
ข้อมูลจำเพาะ
เมื่อได้รับระบบติดตามให้ส่งคืนรายการกรอบเวลา[t_1, t_2, ..., t_n]
ที่รถเข็นคันนั้นi
เริ่มต้นในเวลาt_i
เช่นไม่มีข้อตกลงอื่นใดที่อนุญาตให้รถเข็นเดินทางไปยังจุดหมายปลายทางได้อย่างปลอดภัยด้วยเวลารวมน้อยกว่า
ในแง่ของ "ปลอดภัย" ถ้าในกรอบเวลาใด ๆ จากt_1
ถึงt_T
มีรถเข็นมากกว่าหนึ่งคันบนฉลากใด ๆ พวกเขาก็ชนกันและการจัดเรียงนั้นไม่ "ปลอดภัย" โปรดทราบว่ารถเข็นสองคันสามารถเลื่อนจากa, b
ไปb, a
ยังและยังคง "ปลอดภัย" ได้เพราะแทร็กนั้นเป็นแบบสองทาง
การจัดรูปแบบข้อมูลจำเพาะ
อินพุตจะได้รับเป็นเมทริกซ์ของจำนวนเต็มบวกในรูปแบบที่เหมาะสม ควรให้เอาต์พุตเป็นรายการของจำนวนเต็มบวกในรูปแบบที่เหมาะสม คุณอาจให้ผลลัพธ์ในกรอบเวลาที่ไม่มีการทำดัชนีดังนั้นผลลัพธ์จะเป็นรายการของจำนวนเต็มที่ไม่เป็นลบในรูปแบบที่เหมาะสม
กฎระเบียบ
- ช่องโหว่มาตรฐานใช้
- นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ
- จะไม่ยอมรับคำตอบ
กรณีทดสอบ
Input -> Output
[[1, 2, 3], [4, 5, 6], [7, 8, 9]] -> [1, 1, 1]
[[1, 2, 3], [1, 2, 3]] -> [1, 2]
[[1, 2, 3], [3, 2, 1]] -> [1, 2]
[[1, 2, 3, 4], [4, 3, 2, 1]] -> [1, 1]
[[1, 1, 1], [1, 1, 1]] -> [1, 4]
[[1, 2, 3, 4], [2, 4, 3, 1]] -> [2, 1]
[[1, 2, 3, 4, 5, 6, 7], [2, 3, 3, 4], [5, 4, 3]] -> [1, 3, 4]
[[1, 2, 3, 4, 4], [1, 2, 3, 5, 4], [1, 2, 3, 4, 5]] -> [2, 3, 1]
หมายเหตุ: ผมดึงแรงบันดาลใจสำหรับชุดความท้าทายนี้จากการจุติของรหัส ฉันไม่มีส่วนเกี่ยวข้องกับเว็บไซต์นี้
คุณสามารถดูรายการของความท้าทายทั้งหมดในซีรีส์โดยดูที่ส่วน 'เชื่อมโยง' ของความท้าทายแรกที่นี่
มีความสุขในการเล่นกอล์ฟ!