Engellerle Minimum Yol Toplamı
En iyi maliyeti hücreler boyunca taşıyın.
Engellerle Minimum Yol Toplamı, CoddyKit'te ücretsiz bir Competitive Programming Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Competitive Programming Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Competitive Programming Academy kursu toplamda 4 dersten oluşur.
Saymadan Maliyete
Artık her hücre bir değer taşıyor ve köşeye giden en ucuz rotayı istiyorsunuz. Amaç, yolları saymaktan maliyeti en aza indirmeye dönüşüyor.
Durumu Tanımlama
dp[i][j], (i, j) hücresine ulaşmanın en küçük toplam maliyeti olsun. Izgara ve hareketler aynı, ancak sayılar yerine toplamları izliyoruz.
Geçiş
Gelen iki komşu hücreden daha ucuz olanı seçip mevcut hücreyi eklersiniz. Bu en küçük seçimi, yineleme bağıntısının merkezidir.
dp[i][j] = grid[i][j] + min(dp[i-1][j], dp[i][j-1])Engelleri İşaretleme
Engel, üzerinde duramayacağınız hücredir. Herhangi bir engelden geçen yolun en küçük olmasını önlemek için ona sonsuzluk maliyeti verin.
INF = float('inf')Engeli Temizce İşleme
Izgara bir hücreyi engelli olarak işaretlediğinde, dp değerini sonsuzluk yapıp devam edin. En küçük değer adımı onu doğal olarak atlar.
if blocked(i, j):
dp[i][j] = INF
continueBaşlangıcı Kontrol Etme
Başlangıç hücresinin kendisi engelliyse hiç yol yoktur. Geçersiz bir maliyet döndürmemek için bunu ilk olarak kontrol edin.
İlk Hücreyi Başlatma
Başlangıç hücresine ulaşılabilecek bir komşu olmadığından maliyeti yalnızca kendi değeridir. Döngüler çalışmadan önce dp[0][0] değerini ayarlayın.
dp[0][0] = grid[0][0]Sınırları İşleme
Üst satır yalnızca soldan, sol sütun ise yalnızca üstten ilerler. Izgaranın dışından değer okumamak için bu sınırları özel olarak işleyin.
Sonsuzluk Yayılır
Sonsuzluğa ekleme yaptığınızda sonuç yine sonsuzluk olur; bu nedenle tamamen çevrelenmiş bir hücre INF maliyetini korur. Ulaşılamayan hücreler kendilerini otomatik olarak belli eder.
Sonucu Okuma
En küçük maliyet sağ alt hücrede bulunur. Bu değer hâlâ sonsuzluk ise geçerli hiçbir yol yoktur.
ans = dp[m-1][n-1]
if ans == INF:
ans = -1Burada Açgözlü Yaklaşım Neden Başarısız Olur
Sürekli daha küçük komşuya doğru ilerlemek sizi çıkmaza sokabilir. Küresel olarak en ucuz yolu yalnızca tam bir DP garanti eder; anlık bir açgözlü seçim bunu garanti etmez.
Hızlı Kontrol
Her komşu için ayrı özel durum yazmadan yol DP'sinin engelli bir hücreden kaçınmasını nasıl sağlarsınız?
Tekrar: Engelli Hücrelerle En Kısa Yol
Daha ucuz komşuyu hücre değeriyle toplayın, engelli hücreleri sonsuzluk yapın ve köşeyi okuyun. Oradaki INF, yol olmadığını belirtir. 🧱
Sıkça Sorulan Sorular
“Engellerle Minimum Yol Toplamı” dersi ücretsiz mi?
Evet — “Engellerle Minimum Yol Toplamı” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Competitive Programming Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Competitive Programming Academy kursu toplamda 4 dersten oluşur.
“Engellerle Minimum Yol Toplamı” dersinde ne öğreneceğim?
En iyi maliyeti hücreler boyunca taşıyın. Competitive Programming Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Competitive Programming Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Competitive Programming Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Engellerle Minimum Yol Toplamı” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Competitive Programming Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Competitive Programming Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Izgarada Yol Sayma
- Engellerle Minimum Yol Toplamı
- En Uzun Ortak Alt Dizi
- Adım Adım Düzenleme Mesafesi