Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมค้นหาหลายวิธีในการจัดเรียง n rooks เพื่อไม่ให้โจมตีกันใน Python


สมมติว่าเรามีตัวเลข n แทนกระดานหมากรุกขนาด n x n เราต้องหาหลายวิธีที่จะวาง n rooks เพื่อไม่ให้โจมตีซึ่งกันและกัน ที่นี่สองวิธีจะถือว่าแตกต่างกันหากในวิธีใดวิธีหนึ่ง เซลล์ของกระดานหมากรุกบางส่วนถูกครอบครอง และอีกวิธีหนึ่ง เซลล์จะไม่ถูกครอบครอง (เราทราบดีว่าโจรโจมตีกันเองได้หากอยู่แถวเดียวกันหรือแถวเดียวกัน)

ดังนั้นหากอินพุตเท่ากับ 3 เอาต์พุตจะเป็น 6

โปรแกรมค้นหาหลายวิธีในการจัดเรียง n rooks เพื่อไม่ให้โจมตีกันใน Python

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

f =แฟกทอเรียลของ n

กลับ f

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

import math
class Solution:
   def solve(self, n):
      return math.factorial(n)
ob = Solution()
print(ob.solve(3))

อินพุต

3

ผลลัพธ์

6