Alex y la IOI
¡Alex clasificó a la IOI! y se está preparando para viajar, él quiere saber cuál es la forma más barata de llegar a la IOI.
Alex conoce aeropuertos. Todos los aeropuertos están localizados en una línea recta y cada uno está enumerado de
a
(de izquierda a derecha). La casa de Alex está situada cerca del aeropuerto con id
y el lugar de la olimpiada está situado cerca del aeropuerto con id
. Es posible que la casa de Alex y el lugar de la olimpiada estén cerca del mismo aeropuerto (es decir, que
sea igual a
también es posible).
Para llegar a la olimpiada Alex puede volar entre cualquier par de aeropuertos cualquier cantidad de veces, pero él tiene que empezar su ruta en el aeropuerto y terminarla en el aeropuerto
.
Cada aeropuerto pertenece a una de dos compañías. El costo del vuelo del aeropuerto al aeropuerto
es
si ambos aeropuertos pertenecen a la misma compañía y es
si pertenecen a compañías distintas.
Calcula el costo mínimo que Alex tiene que pagar para llegar a la olimpiada.
Entrada
La primera línea de la entrada contiene los enteros ,
y
.
La segunda y última línea contiene una cadena de caracteres de tamaño , la cual consiste solamente de los caracteres
y
. Si el
-ésimo caracter en la cadena es
el aeropuerto pertenece a la primera compañía, en otro caso el aeropuerto pertenece a la segunda compañía.
Salida
En una única línea imprima el costo mínimo que Alex tiene que pagar para llegar a la olimpiada.
Ejemplos
Entrada 1
4 1 4
1010
Salida 1
1
Entrada 2
5 5 2
10110
Salida 2
0
Explicación de los ejemplos
En el primer ejemplo Alex puede volar al aeropuerto primero y pagar
(porque los aeropuertos pertenecen a compañías distintas) y luego volar del aeropuerto
al aeropuerto
gratis (ambos aeropuertos pertenecen a la misma compañía). Por tanto el costo total es
, esto es óptimo.
En el segundo ejemplo Alex puede volar directamente del aeropuerto al
gratis (ambos aeropuertos pertenecen a la misma compañía), por lo que el costo total es
.
Comments
This comment is hidden due to too much negative feedback. Show it anyway.
La razón es que estás leyendo la secuencia de 0s y 1s como un arreglo de bool, pero estos caracteres son dados sin espacios entre ellos. Deberías leer la secuencia como un string, o un arreglo de char.
This comment is hidden due to too much negative feedback. Show it anyway.