Printing Sequences.
Bessie está aprendiendo a programar usando un lenguaje de programación simple. Primero define un programa válido y luego lo ejecuta para producir una secuencia de salida.
Definición:
- Un programa es una secuencia no vacía de instrucciones.
- Una instrucción puede ser de la forma "
c", donde
es un número entero, o "
o", seguida de un programa y finalizada con "
", donde
es un número entero de al menos
.
Ejecución:
- Ejecutar un programa significa ejecutar sus instrucciones en secuencia.
- Ejecutar la instrucción "
c" agrega
a la secuencia de salida.
- Ejecutar una instrucción que comienza con "
o" ejecuta el programa interno un total de
veces en secuencia.
Un ejemplo de un programa que Bessie sabe escribir es el siguiente:
REP 3
PRINT 1
REP 2
PRINT 2
END
END
Este programa genera la secuencia .
Bessie quiere generar una secuencia de
números enteros positivos. Elsie la desafía a usar como máximo
instrucciones "
". Bessie puede usar tantas instrucciones "
" como desee. Además, cada número entero en la secuencia es como máximo
.
Para cada uno de los
casos de prueba, determina si Bessie puede escribir un programa que genere la secuencia dada utilizando como máximo
instrucciones "
".
Entrada
La primera línea contiene .
La primera línea de cada caso de prueba contiene dos enteros separados por espacio, y
.
La segunda línea de cada caso de prueba contiene una secuencia de enteros positivos, cada uno como máximo
, que representa la secuencia que Bessie quiere generar.
Salida
Para cada caso de prueba, imprime "" o "
" (sensible a mayúsculas y minúsculas) en una nueva línea.
Ejemplo #1 de Entrada
2
1 1
1
4 1
1 1 1 1
Ejemplo #1 de Salida
YES
YES
Para el segundo caso de prueba, el siguiente código genera la secuencia usando solo una instrucción "
".
REP 4
PRINT 1
END
Ejemplo #2 de Entrada
11
4 2
1 2 2 2
4 2
1 1 2 1
4 2
1 1 2 2
6 2
1 1 2 2 1 1
10 2
1 1 1 2 2 1 1 1 2 2
8 3
3 3 1 2 2 1 2 2
9 3
1 1 2 2 2 3 3 3 3
16 3
2 2 3 2 2 3 1 1 2 2 3 2 2 3 1 1
24 3
1 1 2 2 3 3 3 2 2 3 3 3 1 1 2 2 3 3 3 2 2 3 3 3
9 3
1 2 2 1 3 3 1 2 2
6 3
1 2 1 2 2 3
Ejemplo #2 de Salida
YES
NO
YES
NO
YES
YES
YES
YES
YES
NO
NO
Para el primer caso de prueba, el siguiente código genera la secuencia usando solo 2 instrucciones "
".
PRINT 1
REP 3
PRINT 2
END
Para el segundo caso de prueba, la respuesta es "" porque es imposible generar la secuencia
usando como máximo 2 instrucciones "
".
Para el sexto caso de prueba, el siguiente código genera la secuencia usando solo 3 instrucciones "
".
REP 2
PRINT 3
END
REP 2
PRINT 1
REP 2
PRINT 2
END
END
USACO 2025 February Contest, Bronze Problem 3. Printing Sequences.
Comments