สมมติว่ามีอาร์เรย์ nums ต้องหาจำนวนการสลับ (swap) น้อยที่สุดเพื่อเรียงลำดับ nums ให้เรียงได้ทั้งจากน้อยไปมากหรือมากไปน้อย ตัวอย่าง: nums = [2,5,6,3,4] ผลลัพธ์ 2 เพราะสลับ 6↔4 ได้ [2,5,4,3,6] แล้วสลับ 5↔3 ได้ [2,3,4,5,6] วิธีแก้ปัญหา ฟังก์ชัน swap_count(input_arr): pos := sorted(enumerate(input_arr