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

โปรแกรมหาแถวที่ n ของ Pascal's Triangle ใน Python


สมมติว่าเรามีตัวเลข n เราต้องหาแถวที่ n (0 ดัชนี) ของสามเหลี่ยมปาสกาล อย่างที่เราทราบดีว่าสามเหลี่ยมของปาสกาลสามารถสร้างได้ดังนี้ -

  • ในแถวบนสุด มีอาร์เรย์ 1
  • แถวต่อมาสร้างโดยการเพิ่มตัวเลขด้านบนและด้านซ้ายโดยมีหมายเลขด้านบนและด้านขวา

มีแถวไม่กี่แถวดังนี้ −

โปรแกรมหาแถวที่ n ของ Pascal s Triangle ใน Python

ดังนั้น หากอินพุตเท่ากับ 4 เอาต์พุตจะเป็น [1, 4, 6, 4, 1]

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

  • ถ้า n เหมือนกับ 0 แล้ว
    • ส่งคืน [1]
  • ถ้า n เหมือนกับ 1 แล้ว
    • ส่งคืน [1,1]
  • ls:=รายการที่มี [1,1], temp:=รายการที่มี [1,1]
  • สำหรับ i ในช่วง 2 ถึง n+1 ให้ทำ
    • ls:=อุณหภูมิ
    • temp:=รายการที่มีค่าเดียว =1
    • สำหรับฉันในช่วง 0 ถึงขนาด ls -1 ทำ
      • รวม ls[i],ls[i+1] แล้วใส่เมื่อสิ้นสุดอุณหภูมิ
    • ใส่ 1 เมื่อสิ้นสุดอุณหภูมิ
  • อุณหภูมิกลับ

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

ตัวอย่าง

class Solution:
   def solve(self, n):
      if n==0:
         return [1]
      if n==1:
         return [1,1]
      ls=[1,1]
      temp=[1,1]
      for i in range(2,n+1):
         ls=temp
         temp=[1]
         for i in range(len(ls)-1):
            temp.append(ls[i]+ls[i+1])
         temp.append(1)
      return temp
ob = Solution()
print(ob.solve(4))

อินพุต

4

ผลลัพธ์

[1, 4, 6, 4, 1]