La entrada de este ejercicio es una secuencia de caracteres sobre
{a,b,c,d}. Queremos contar dos cosas:
Queremos contar el número de c’s que
cumplen lo siguiente: antes de esta c hay
alguna a. Además, si consideramos la
a más cercana a esta
c y anterior a esta
c, entonces, entre ambas letras no hay ninguna
b. Por ejemplo, en la siguiente palabra hemos
marcado en negrita las c’s que se han de
contar:
cdbdadccbdcacbbdcdabcd.
Queremos contar el número de d’s que
cumplen lo siguiente: después de esta d hay
alguna a. Además, si consideramos la
a más cercana a esta
d y posterior a esta
d, entonces, entre ambas letras no hay ninguna
b. Por ejemplo, en la siguiente palabra hemos
marcado en negrita las d’s que se han de
contar:
cdbdadccbdcacbbdcdabcd.
La entrada es una secuencia de caracteres sobre
{a,b,c,d}, en una sola linea.
La salida tiene dos números naturales, en una sola linea, y separados por un espacio en blanco:
el número de c’s que tienen una
a antes y no hay ninguna
b entre ambas letras.
el número de d’s que tienen una
a después y no hay ninguna
b entre ambas letras.
No se puede utilizar ningún método de almacenamiento masivo de datos,
ni tan siquiera string. Leed y tratad la
entrada carácter a carácter.
Evaluación sobre 10 puntos:
Solución lenta: 5 puntos.
solución rápida: 10 puntos.
Entendemos como solución rápida una que es correcta, de coste lineal y capaz de superar los juegos de pruebas públicos y privados. Entendemos como solución lenta una que no es rápida, pero es correcta y capaz de superar los juegos de pruebas públicos.
Input
cdbdadccbdcacbbdcdadacacadbcd
Output
5 5
Input
bbabddccdcdcddddcdcadccbddcabbbbaaaccdcdccdddcaadcdcccdcaaddcdcdddccddcbbaadddcacdddcddbacdcccaccbabdcbddcdcdddcdcdcdcbdddcddbabcacddccddcdccccc
Output
36 23