Mastermind是一種經典的猜數游戲,在該游戲中,玩家需要嘗試猜出隱藏的一個四位數字。每次猜測后,系統會給出兩個指標:準確數字和包含數字但位置錯誤的數字。玩家根據這些指標不斷猜測,直到猜中隱藏數字為止。
public class Mastermind { private int[] secretCode; public Mastermind() { secretCode = generateCode(); } private int[] generateCode() { Random rand = new Random(); int[] code = new int[4]; for (int i = 0; i < 4; i++) { code[i] = rand.nextInt(10); } return code; } public String guess(int[] guessCode) { int exactMatch = 0; int includeMatch = 0; for (int i = 0; i < 4; i++) { if (guessCode[i] == secretCode[i]) { exactMatch++; } else { for (int j = 0; j < 4; j++) { if (guessCode[i] == secretCode[j]) { includeMatch++; break; } } } } return exactMatch + "A" + includeMatch + "B"; } }
上面是一個Java實現的Mastermind游戲,其中generateCode方法用于生成一個隨機的隱藏數字,guess方法接收玩家猜測的數字并返回指標。在guess方法中,我們使用兩個計數器來記錄準確數字和包含數字但位置錯誤的數字。通過兩個嵌套的循環,我們可以遍歷猜測數字和隱藏數字,并比較它們的值。