Meydan okuma 4
- Algoritmalar kursu
- Orta seviye
- Ders 80/80
- 4 dk
Greedy ile bozuk para çözümünü yazdırırsın.
Meydan okuma 4: Greedy
Bu meydan okumada greedy ile bozuk para çözümünü yazdıracaksın.
Paralar: [25, 10, 5, 1]. Tutar: 63. Çıktı: 6.
Greedy; her adımda en büyük parayı alır; standart sistemlerde optimim verir.
Uygulama Greedy para say
greedy_coins(coins, amount) yaz. Greedy ile en az para sayısını yazdır. Çıktı: 6.
Başlangıç kodu
def greedy_coins(coins, amount):
# Greedy para sayÖrnek çözüm
def greedy_coins(coins, amount):
# Greedy para say
coins.sort(reverse=True)
count = 0
for coin in coins:
count += amount // coin
amount = amount % coin
print(count)
greedy_coins([25, 10, 5, 1], 63)Beklenen çıktı
6
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 63 için [25,10,5,1] greedy kaç para verir?
- 5
- 6 Doğru cevap
- 4
- 7
Açıklama: 6.
2 Meydan okuma 4: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
greedy |
Yerel en iyi |
coin |
Para |
amount |
Tutar |
sort |
Sırala |