El algoritmo del pintor

Te pedimos que hagas un programa que sea capaz de pintar encima de un
dibujo (una cuadrícula de caracteres). En concreto, cuando pintas con un
color (pongamos, la letra ‘C’) encima de una casilla de otro color
(pongamos, la letra ‘z’), esta casilla pasará a tener color ‘C’. Lo
mismo pasará con todas las casillas ‘z’ que sean adyacentes a la primera
‘z’, y con las casillas ‘z’ adyacentes a estas segundas ‘z’, etc. Las
letras que no sean ‘z’ actuarán como paredes que evitan que la pintura
se expanda.

¿Eres capaz de programar esto?

Entrada

Un número N con el tamaño del tablero cuadrado. A continuación, una
línea con una letra mayúscula (el color con el que pintas) seguido de
dos coordenadas 1 ≤ i, j ≤ N, con la fila y columna de la casilla donde
se empieza pintando. Por último, N filas de N caracteres cada una, todos
ellos letras minúsculas, con el contenido inicial del tablero.

Salida

Escribe como queda el tablero después de ser pintado. Mira los ejemplos
para resolver posibles dudas.

Puntuación

- Test1:

  Entradas con 3 ≤ N ≤ 10 y la pintura nunca tocará el borde del
  tablero.

- Test2:

  Entradas con 3 ≤ N ≤ 100 y la pintura nunca tocará el borde del
  tablero.

- Test3:   Entradas con 1 ≤ N ≤ 200.

- Test4:   Entradas con 1 ≤ N ≤ 500.

- Test5:   Entradas con 1 ≤ N ≤ 1000.

Información del problema

Autoría: Omer Giménez

Generación: 2026-01-25T10:10:08.781Z

© Jutge.org, 2006–2026.
https://jutge.org
