赞
踩
You are playing the Bulls and Cows game with your friend.
You write down a secret number and ask your friend to guess what the number is. When your friend makes a guess, you provide a hint with the following info:
Given the secret number secret and your friend’s guess guess, return the hint for your friend’s guess.
The hint should be formatted as “xAyB”, where x is the number of bulls and y is the number of cows. Note that both secret and guess may contain duplicate digits.
Use three list to record the state, if a number is used just ignore it.
class Solution: def getHint(self, secret: str, guess: str) -> str: slen = len(secret) bulls = [0] * slen cows = [0] * slen used = [0] * slen for i in range(slen): if secret[i] == guess[i]: bulls[i] = 1 used[i] = 1 for i in range(slen): if not bulls[i]: for j in range(slen): if i != j and not bulls[j] and not used[j]: if secret[j] == guess[i]: cows[i] = 1 used[j] = 1 break return str(sum(bulls)) + "A" + str(sum(cows)) + "B"
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。