O10

Bilet Numarası Onarımı

Kıdemli Aday (Mid/Senior)
Hedef Süre: 25 - 35 Dakika
Tip: NUMERIC

Teknik Tanım & Görev

Bir etkinlik sisteminde bilet numaraları üretilmiş, ancak bir hata sonucu AYNI numara birden fazla bilete atanmış ve bazı numaralar geçersiz (0 veya negatif) çıkmıştır. Sistem kuralları şunları gerektirir: • Her bilet numarası BENZERSİZ olmalıdır. • Her bilet numarası EN AZ 1 olmalıdır. • Bir numarayı yalnızca ARTIRABİLİRSİN; azaltmak veya silmek yasak. • Her 1 birimlik artışın maliyeti 1'dir. Numara listesi verildiğinde, listeyi kurallara uygun hâle getirmenin EN DÜŞÜK TOPLAM MALİYETİNİ döndür.

Fonksiyon İmzası (Python)

min_arttirma(numaralar: list[int]) -> int

Girdi ve Çıktı Sözleşmesi

Çıktı Kuralı:Negatif olmayan tam sayı. Liste zaten kurallara uygunsa 0.

Sistem Kısıtları (Constraints)

0 <= numaralar.length <= 10^5
-10^6 <= numaralar[i] <= 10^6

Örnek Yürütme Analizi

numaralar = [1, 1, 1]
sırala: [1, 1, 1]
1. numara: 1 -> maliyet 0, son = 1
2. numara: 1 -> en az 2 olmalı -> 1 -> 2, maliyet 1, son = 2
3. numara: 1 -> en az 3 olmalı -> 1 -> 3, maliyet 2, son = 3
toplam maliyet = 0 + 1 + 2 = 3

Örnek Test Senaryoları (3)

Örnek 1
Girdi:[[1,1,1]]
Beklenen Çıktı:3
Örnek 2: Zaten Artan Dizi
Girdi:[[1,2,3]]
Beklenen Çıktı:0
Örnek 3: İki Eşit Sayı (2->3: +1)
Girdi:[[2,2]]
Beklenen Çıktı:1
Python Editörü Yükleniyor...
Girdi Parametreleri
[
  [
    1,
    1,
    1
  ]
]
Beklenen Çıktı
3