Rekabetçi ProgramlamaKolay

Etkinlik Seçimi

'Etkinlik Seçimi' sorunu için ayrıntılı kılavuz ve Python uygulaması.

Sorun Bildirimi

Kolay

Faaliyetlerin başlangıç ve bitiş zamanlarını temsil eden start ve end adlı iki listeyi alan activity_selection(start, end) fonksiyonunu yazın. Bir kişinin aynı anda yalnızca tek bir aktivite üzerinde çalışabileceğini varsayarak, tek bir kişi tarafından gerçekleştirilebilecek maksimum aktivite sayısını bulun. İkincinin başlangıç ​​zamanı birincinin bitiş zamanından büyük veya ona eşitse iki aktivite örtüşmez.

Kısıtlamalar
  • 1 <= len(start) == len(end) <= 10^5
  • 0 <= start[i] < end[i] <= 10^9

Örnekler

Example 1
Input
activity_selection([1, 3, 0, 5, 8, 5], [2, 4, 6, 7, 9, 9])
Output
4
Explanation

A person can perform at most 4 activities: [1,2], [3,4], [5,7], and [8,9].

Example 2
Input
activity_selection([10, 12, 20], [20, 25, 30])
Output
2
Explanation

Two activities can be performed: [10,20] and [20,30].

Need a Hint?
Kümeler veya yığınlar gibi Greedy'ye özgü veri yapılarını kullanmayı düşünün.
Edge Cases to Watch
  • Boş giriş yapıları
  • Tek eleman girişleri
  • Büyük sayısal sınırlar

Çözmeye Hazır mısınız?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Editörde Aç
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.