O10
Bilet Numarası Onarımı
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]) -> intGirdi 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