14
สนุกกับการเรียงสับเปลี่ยน
ใครไม่รักการเรียงสับเปลี่ยนใช่ไหม? ฉันรู้ว่ามันยอดเยี่ยมมาก - สนุกมาก! ดีทำไมไม่ใช้เวลานี้สนุกและทำให้มันfunner ? นี่คือความท้าทาย: รับอินพุตในรูปแบบที่แน่นอน: nPr, ซึ่งnเป็นพูลที่นำมาจากและrเป็นจำนวนการเลือกจากพูลนั้น (และnและrเป็นจำนวนเต็ม) เอาต์พุต / ส่งกลับจำนวนพีชคณิตที่แน่นอน สำหรับผู้ที่มีสนิมเล็กน้อยกับคำศัพท์: การเปลี่ยนแปลง, การกำหนด 2a อย่างไรก็ตามนี่คือที่มาของความท้าทาย (ทำให้ไม่ง่ายเกินไป): คุณไม่สามารถใช้ไลบรารีเฟรมเวิร์กหรือเมธอดสำหรับฟังก์ชันการเรียงลำดับของคุณ คุณไม่สามารถใช้วิธีแบบแฟคทอเรียลวิธีการเรียงสับเปลี่ยนหรืออะไรก็ได้ คุณต้องเขียนทุกอย่างด้วยตัวเอง หากต้องการคำชี้แจงเพิ่มเติมโปรดอย่าลังเลที่จะบอกฉันในความคิดเห็นและฉันจะทำตามทันที นี่คือตัวอย่าง I / O: ฟังก์ชั่นตัวอย่างคือ permute(String) -> int การป้อนข้อมูล: permute("3P2") เอาท์พุท: 6 นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ!