Problem 44237. Mastermind II: Solve in 8 or less

Mastermind is a code breaking logic puzzle. A pattern of 6 colors(values 1:6) of four positions (1111;1112;....6666) for a possible 6^4(1296) cases is generated. The solver plays a length 4 vector with values 1:6. Accuracy of the play is returned by a count of values in the right position and a count of values(excluding those in the right positions) common to the solution.

Answer:1233  Guess:3231 Response: 2,2  as x23x are right value/position, 3xx1 are right values.

[guess]=solve_mastermind(mguess,mpegs,m,mpc,mc,mpc5c,v)

where guess is a 1x4 vector, mguess is the kx4 matrix of prior guesses and is empty on first try, mpegs is kx2 giving right [value/position, values] for mguess, m is a 1296x4 array [1 1 1 1;...6 6 6 6] of all solutions, mpc is a 1296x1296 array of 0:4 for value/position solutions, mc is a 1296x1296 array of 0:4 for value solutions, mpc5c is state array of a combined mpc and pc of values 0:20, 5*mpc+mc, and v is integer value of solutions 1111 thru 6666.

Challenge: All 1296 cases will be provided. The maximum number of guesses allowed is 8 with a time limit of 45 seconds. The user will see their prior guesses and the guess response.

Theory: Simple elimination of invalid cases is sufficient to reduce max guesses to 8. The optimal minimal guess solution requires only 5 guesses.

Future: Four Mastermind challenges will be created, [Solve no limit, Solve in 8 or less, Solve in 1 given a guess pattern, Solve in 5 or less]

Solution Stats

73.08% Correct | 26.92% Incorrect
Last Solution submitted on May 25, 2023

Problem Comments

Solution Comments

Show comments

Problem Recent Solvers14

Suggested Problems

More from this Author296

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!