Pantallas de carga
Durante los 80, las portadas de los juegos tenían que vender el juego en una época en la que el realismo gráfico era inexistente. Los estudios encargaban las portadas a ilustradores como Alfonso Azpiri o Luis Royo que crearon verdaderas obras de arte.
El problema era cuando el juego tenía que mostrar esas imágenes durante las pantallas de carga para aliviar la tediosa espera. Además de tener muy bajas resoluciones, la riqueza de color era mínima.
El ZX Spectrum, por ejemplo, solo era capaz de mostrar 15 colores*, y no todos a la vez. En concreto, la pantalla se dividía en bloques de 8×8 píxeles, y en cada bloque solo podían usarse dos colores distintos. De esta forma, con su resolución de 256×192 la pantalla quedaba dividida en una cuadrícula de 32×24 celdas de 8×8 píxeles, y cada una solo podía mostrar 2 de los 15 colores.
Conseguir disimular esta limitación era también todo un arte.
Entrada
Cada caso de prueba comienza con dos números que indican el ancho y alto, en número de píxeles, de una imagen. Se garantiza que ambas dimensiones son múltiplo de 8 y no serán mayores que 48.
A continuación viene la imagen, con una letra para cada píxel entre la A y la O (con el alfabeto inglés, 15 letras distintas).
La entrada termina con dos ceros, que no deben procesarse.
Salida
Por cada caso de prueba el programa escribirá "SI" si la imagen puede representarse en un ZX Spectrum, es decir si cada uno de los bloques de 8×8 píxeles utiliza como mucho 2 colores (letras). Si, por el contrario, algún bloque de 8×8 usa más de dos colores se escribirá "NO".
Entrada de ejemplo
16 8 AAAAAAAIBBCCCBBC AAIIIAAICBBCBBCC AIIIAAIICCBBBCCC IIIAAIIICCBBBCCC IIAAIIAICBBCBBCC IAAIIAAIBBCCCBBC AAAAAAAIBBCCCBBC IIIIIIIICCCCCCCC 0 0
Salida de ejemplo
SI