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

โปรแกรม Python สำหรับปัญหาการเลือกกิจกรรม


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง

คำชี้แจงปัญหาเราได้รับ n กิจกรรมพร้อมเวลาเริ่มต้นและสิ้นสุดตามลำดับ เราจำเป็นต้องเลือกจำนวนสูงสุดของกิจกรรมที่บุคคลคนเดียวสามารถทำได้ โดยจะต้องทำงานทีละกิจกรรม

สัญกรณ์ตัวแปร

N - จำนวนกิจกรรมทั้งหมด

S - อาร์เรย์ที่มีเวลาเริ่มต้นของกิจกรรมทั้งหมด

F - อาร์เรย์ที่มีเวลาสิ้นสุดของกิจกรรมทั้งหมด

ตอนนี้มาดูวิธีแก้ปัญหาในการใช้งานด้านล่างกัน −

# วิธีโลภ

ตัวอย่าง

# maximum number of activities that can be performed by a single person
def Activities(s, f ):
   n = len(f)
   print ("The selected activities are:")
   # The first activity is always selected
   i = 0
   print (i,end=" ")
   # For rest of the activities
   for j in range(n):
      # if start time is greator than or equal to that of previous activity
         if s[j] >= f[i]:
            print (j,end=" ")
            i = j
# main
s = [1, 2, 0, 3, 2, 4]
f = [2, 5, 4, 6, 8, 8]
Activities(s, f)

ผลลัพธ์

The selected activities are:
0 1

โปรแกรม Python สำหรับปัญหาการเลือกกิจกรรม

ตัวแปรทั้งหมดได้รับการประกาศในขอบเขตท้องถิ่นและการอ้างอิงของตัวแปรนั้นดูได้จากรูปด้านบน

บทสรุป

ในบทความนี้ เราได้เรียนรู้เกี่ยวกับวิธีการสร้างโปรแกรม Python สำหรับปัญหาการเลือกกิจกรรม