เขียนฟังก์ชั่นที่ใช้ชุดจำนวนเต็มและพิมพ์การเรียงสับเปลี่ยนของชุดและการสลับที่ดำเนินการระหว่างแต่ละขั้นตอน
อินพุต
ชุดจำนวนเต็มตัวอย่างเช่น (0, 1, 2)
เอาท์พุต
รายการการเรียงสับเปลี่ยนและสลับในรูปแบบ (ชุด) (สลับ) (ชุด) ...
กรณีทดสอบ
Input:
(3, 1, 5)
Output:
(3, 1, 5)
(3, 1)
(1, 3, 5)
(3, 5)
(1, 5, 3)
(1, 3)
(3, 5, 1)
(3, 5)
(5, 3, 1)
(3, 1)
(5, 1, 3)
กฎระเบียบ
- คุณสามารถจัดรูปแบบชุดตัวเลขได้ตามต้องการ
- คุณสามารถสลับในลำดับใดก็ได้
- คุณสามารถทำซ้ำพีชคณิตและแลกเปลี่ยนเพื่อรับใหม่
- รหัสของคุณไม่จำเป็นต้องทำการแลกเปลี่ยนจริงผลลัพธ์เพียงแค่แสดงให้เห็นว่าการสลับใดที่เกิดขึ้นระหว่างเอาท์พุทล่าสุดของคุณกับอันปัจจุบันของคุณ
- รหัสของคุณจำเป็นต้องใช้งานสำหรับชุดที่มี 2 องค์ประกอบขึ้นไป
- ชุดที่คุณได้รับจะไม่มีองค์ประกอบที่ทำซ้ำ (เช่น (0, 1, 1, 2) ไม่ถูกต้อง)
นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ!
(3, 1, 4)
หรือดังนั้น - อ่านครั้งแรกที่ฉันสับสนมากเพราะ swap ครั้งแรก0,1
สลับองค์ประกอบ0,1
แต่ยังดัชนี0,1
แต่ต่อไป การสลับไม่เป็นไปตามรูปแบบนั้น ฉันจะชี้ให้คุณไปที่Sandboxซึ่งคุณสามารถโพสต์ความท้าทายและรับข้อเสนอแนะก่อนโพสต์ในเว็บไซต์หลัก