Z04

Bekleme Süreli Borsa

Başmühendis (Staff/Lead)
Hedef Süre: 40 - 50 Dakika
Tip: NUMERIC

Teknik Tanım & Görev

Bir yatırımcı n gün boyunca bir hissenin günlük kapanış fiyatlarını gözlemliyor. Kurallar: • Aynı anda EN FAZLA BİR pozisyon tutabilir (elinde hisse varken yeni hisse ALAMAZ; önce satması gerekir). • İstediği kadar AL-SAT yapabilir (işlem sayısı sınırsız). • Bir hisseyi SATTIKTAN SONRA, BİR SONRAKİ GÜN hiçbir işlem yapamaz (bekleme süresi / cooldown). • Her SATIŞ işlemi sabit bir `islemUcreti` maliyeti getirir. Alışta ücret yoktur. • Hiç işlem yapmamak her zaman geçerlidir (kâr 0). Günlük fiyat listesi ve işlem ücreti verildiğinde, elde edilebilecek EN YÜKSEK TOPLAM KÂRI döndür.

Fonksiyon İmzası (Python)

maks_kar(fiyatlar: list[int], islem_ucreti: int) -> int

Girdi ve Çıktı Sözleşmesi

Çıktı Kuralı:Negatif olmayan tam sayı (zarar eden işlem yapılmaz). Boş liste için 0.

Sistem Kısıtları (Constraints)

0 <= fiyatlar.length <= 10^5
0 <= fiyatlar[i] <= 10^4
0 <= islemUcreti <= 10^4

Örnek Yürütme Analizi

fiyatlar = [1, 2, 3, 0, 2], islemUcreti = 0
en iyi strateji: 1. gün al (1) -> 2. gün sat (2) -> 3. gün bekle -> 4. gün al (0) -> 5. gün sat (2)
kâr = (2-1) + (2-0) = 3
cevap: 3

Örnek Test Senaryoları (3)

Örnek 1
Girdi:[[1,2,3,0,2],0]
Beklenen Çıktı:3
Örnek 2: İşlem Ücreti 3
Girdi:[[1,3,7,5,10,3],3]
Beklenen Çıktı:6
Örnek 3: Sıfır Ücret Monoton Artan
Girdi:[[1,2,3,4],0]
Beklenen Çıktı:3
Python Editörü Yükleniyor...
Girdi Parametreleri
[
  [
    1,
    2,
    3,
    0,
    2
  ],
  0
]
Beklenen Çıktı
3