Cita:
Iniciado por eferion No se si te has dado cuenta, pero tu código hace sendas copias de los strings cada vez que llamas a la función
ehhhh....quería respetar el prototipo de la función
(mentira, casi nunca me acuerdo de tener en cuenta esto)
@b3salvat: El caso es que nunca he jugado al mastermind, pero por lo que estoy viendo en el ejemplo de
wikipedia, lo mio no funciona, ya que en caso de repetición de colores, siendo estos aproximaciones, sólo se consideran tantas aproximaciones como colores iguales haya en el patrón.
En el ejemplo de la wikipedia la secuencia a acertar es verde-rojo-azul-verde
Digamos que es en ingles
grbg
Y se hacen dos intentos:
rojo-amarillo-rojo-verde
ryrg
y
verde-verde-naranaja-rojo
ggor
El primer intento arroja 1 acierto y 1 aproximación
El segundo 1 acierto y 2 aproximaciones
Pero mi código arroja 1 intento y 2 aproximaciones en ambos casos:
Código C++:
Ver originalcout<<evaluar("ryrg","grbg")<<endl;
cout<<evaluar("ggor","grbg")<<endl;
Eso es porque parece (viendo el ejemplo) que si tengo dos fichas rojas que no están en su sitio y un sóla ficha roja en el patrón, he de considerar sólo una aproximación.
Mira a ver el código de eferion, que seguramente lo hará mejor