Izgara Yolları
Coddy'nin R Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 64 / 64.
Görev
Zorcount_paths(grid) işlevini tamamla. grid, 0'lardan (açık hücreler) ve 1'lerden (duvarlar) oluşan bir matristir. Bir yol sol üst hücrede başlar, sağ alt hücrede sona erer, yalnızca sağa veya aşağı hareket eder ve hiçbir zaman bir duvara girmez. İki satır döndür: farklı yolların sayısını içeren Paths: ve herhangi bir yoldaki hamlelerin sayısını (tüm yolların uzunluğu aynıdır) içeren Steps: ; yol yoksa Steps: none döndür.
Aynı boyutta, her hücrenin kendisine ulaşan yolların sayısını tuttuğu bir ways matrisi oluştur: açık bir hücre, üstündeki ve solundaki hücrenin değerlerinin toplamını alır; duvar ise 0 değerini alır.
Sağlanan kod, ızgarayı tek bir satırdan okur: satırlar ; ile, bir satırın değerleri ise , ile ayrılır. Döndürülen her satırı yazdırır.
Kendin dene
count_paths <- function(grid) {
# Kodunuzu buraya yazın
c("Paths: 0", "Steps: none")
}
# Sağlanan girdi/çıktı kodu: olduğu gibi bırakın
input <- suppressWarnings(readLines(file("stdin")))
rows <- strsplit(input[1], ";")[[1]]
grid <- matrix(as.numeric(unlist(strsplit(rows, ","))), nrow = length(rows), byrow = TRUE)
cat(count_paths(grid), sep = "\n")
Mantık ve Akış bölümündeki tüm dersler
1Dizeleri Derinlemesine
substr() ile Alt Dizelersprintf() ile BiçimlendirmeBölme ve BirleştirmeDizelerde AramaMetin DeğiştirmeTekrar - Kullanıcı Adı Oluşturucu4Matrisler
Matris OluşturmaMatrisleri İndekslemeSatır ve Sütun ÖzetleriMatris AritmetiğiTekrar - Oturma Planı2Anahtar-Değer Aramaları
Adlandırılmış Vektör AramalarıAnahtarları DenetlemeAnahtar Ekleme ve KaldırmaAdlar Üzerinde DöngüTekrar - Hisse Senedi Masası5Proje - Not Defteri
Öğrenci EklemeNotları Kaydetme3Kümeler ve Sayma
Benzersiz DeğerlerKüme İşlemleriÜyelik Testleritable() ile SaymaTekrar - Etkinlik Konukları6Değer Olarak Fonksiyonlar
Anonim FonksiyonlarFonksiyonları GeçirmeFonksiyon DöndürmeDurum Bilgili Closure'larTekrar - İndirim Kuralları9Veri Çerçeveleri
Veri Çerçeveleri OluşturmaSütunlar ve SatırlarSatırları FiltrelemeEkleme ve SıralamaTekrar - Satış Raporu12Proje - Harcama Takipçisi
Harcamaları KaydetmeToplam HarcamaKendi başına pratik yap: Online R derleyicisi