Menu
Coddy logo textTech

Percorsi sulla griglia

Fa parte della sezione Logica e flusso del percorso R di Coddy. Lezione 64 di 64.

challenge icon

Sfida

Difficile

Completa count_paths(grid). grid è una matrice di 0 (celle libere) e 1 (muri). Un percorso inizia nella cella in alto a sinistra, termina nella cella in basso a destra, si muove solo verso destra o verso il basso e non attraversa mai un muro. Restituisci due righe: Paths: con il numero di percorsi diversi e Steps: con il numero di mosse in qualsiasi percorso (tutti i percorsi hanno la stessa lunghezza), oppure Steps: none se non esiste alcun percorso.

Crea una matrice ways delle stesse dimensioni, in cui ogni cella contiene il numero di percorsi che la raggiungono: una cella libera riceve la somma della cella sopra e di quella alla sua sinistra, mentre un muro riceve 0.

Il codice fornito legge la griglia da una riga: le righe sono separate da ; e i valori di una riga da ,. Stampa ogni riga restituita.

Provalo tu

count_paths <- function(grid) {
  # Scrivi il tuo codice qui
  c("Paths: 0", "Steps: none")
}

# Codice di input/output fornito: lascialo così com'è
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")

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore R online