Kamen

Desde hace dos semanas, Domeniko ha estado estirado en cama porque su
amigo Nedjeljko accidentalmente tiró una roca encima de su pie
izquierdo. Como Domeniko ya ha resuelto todos los problemas de la
olimpiada, tiene que buscar un nuevo modo de pasar el tiempo.

El nuevo juego de Domeniko requiere un tablero de dimensiones R por C.
Inicialmente, cada recuadro está vacío, o contiene un muro. Domeniko
puede “lanzar” piedras en el tablero situándola en la fila superior de
una columna, y dejando que la “gravedad” la haga caer hasta encontrar un
obstáculo. En concreto:

- Si la casilla debajo de la piedra es un muro, o si la piedra está en
  la fila inferior de la columna, la piedra permanece donde está.

- Si la casilla debajo de la piedra está vacía, la piedra se mueve a esa
  casilla.

- Si la casilla debajo de la piedra es otra piedra, entonces la piedra
  puede moverse lateralmente, como se describe a continuación:

  - Si la casilla izquierda y la casilla inferior-izquierda están
    vacías, entonces la piedra se desplaza una casilla a la izquierda.

  - Si esto no es posible, pero la casilla derecha y la inferior-derecha
    están vacías, entonces la piedra se desplaza una casilla a la
    derecha.

  - Si nada de esto ocurre, la piedra se queda donde está.

Domeniko nunca lanza una segunda piedra mientras la primera está
moviéndose, y tampoco lanza una piedra por una columna tal que la
primera casilla esté ocupada.

Haz un programa que dibuje como queda el tablero después de que Domeniko
haya lanzado todas sus piedras.

Entrada

La primera línea contiene enteros R (entre 1 y 30000) y C (entre 1 y 30)
con las dimensiones del tablero. A continuación, R líneas con C
caracteres, describiendo la situación inicial del tablero. Un ’.’
representa una casilla vacía, mientras que una ’X’ representa una
casilla con un muro.

A continuación, una línea con el número N de piedras que Domeniko lanza,
seguido de N líneas con un entero entre 1 y C, la columna por la que
Domeniko lanza la piedra. Se te garantiza que en el 60% de los casos de
prueba, R no será mayor que 30.

Salida

Escribe R líneas, cada una con C caracteres, con la situación final del
tablero. Usa la letra ’O’ para representar piedras.

Información del problema

Autoría: COCI06/07

Generación: 2026-01-25T11:10:50.861Z

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