1
ข่าวร้ายมีคน
ในตอนทุรานักโทษแห่ง Bendaสมาชิกของร่างกายแลกเปลี่ยนลูกเรือกับแต่ละอื่น ๆ ด้วยการจับคู่ที่ไม่ร่างกายสามารถมีจิตใจของพวกเขาสลับมากกว่าหนึ่งครั้ง ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ยอมรับคอลเลกชั่นสว็อป - จิตใจที่ถูกต้องที่เกิดขึ้นแล้วและส่งชุดสว็อปตามกฎหมายที่จะนำจิตใจแต่ละดวงกลับคืนสู่ร่างกายดั้งเดิม ตัวระบุสำหรับคอลเลกชันของร่างกายและจิตใจเหล่านี้จะต้องเป็นสตริงซึ่งจะไม่ขึ้นบรรทัดใหม่ คุณสามารถเพิ่มผู้คนที่ไม่เคยมีการสลับไปยังกลุ่มอินพุทได้ถึงสองคน (ตั้งชื่ออย่างชัดเจน) (พิสูจน์ได้ว่าคุณต้องการร่างกายเพิ่มได้เพียง 2 ตัวเท่านั้น)อย่างไรก็ตามคุณต้องเพิ่มจำนวนคนขั้นต่ำที่จำเป็นในการแก้ปัญหา การป้อนข้อมูลและการส่งออกอาจมีรูปแบบที่ชัดเจนใด ๆ แต่ไม่มีข้อมูลเพิ่มเติมสามารถเก็บไว้ในทั้ง คุณอาจคิดว่ามันถูกต้องเสมอ นี่คือรหัสกอล์ฟดังนั้นผู้ชนะคือการส่งที่มีไบต์น้อยที่สุด ตัวอย่าง [('A','B'),('C','D')] -> [('A','C'),('B','D'),('A','D'),('B','C')] ['A','B'] -> ['C','D','A','C','B','D','A','D','B','C'] [('A','B'),('C','D'),('A','C'),('A','D')] -> [('B', 'E'), ('A', 'E'), ('C', 'B'), ('C', 'E')] "A\nB\nC\nD\n" -> "A\nC\nB\nD\nA\nD\nB\nC\n" หนึ่งจากการแสดง: [("Amy","Hubert"),("Bender","Amy"),("Hubert","Turanga"),("Amy","Wash Bucket"),("Wash Bucket","Nikolai"),("Phillip","John"),("Hermes","Turanga")] วิธีแก้ปัญหาของรายการที่ระบุด้านล่างไม่ถูกต้อง: [("Clyde","Phillip"),("Ethan","John"),("Clyde","John"),("Ethan",Phillip"),("Clyde","Hubert"),("Ethan","Wash Bucket"),("Clyde","Leela"),("Ethan","Nikolai"),("Clyde","Hermes"),("Ethan","Bender"),("Clyde","Amy"),("Ethan","Hubert"),("Clyde","Wash Bucket")] สิ่งนี้ไม่ถูกต้องเนื่องจากอีธานและไคลด์ไม่จำเป็นเพราะฟิลลิปฟรายเล็กน้อย, Zoidberg John …