diff --git a/06/wordle1.py b/06/wordle1.py index 0c34683e0e5ee131f07880ebd936f2abf0e40c6d..9535601b5208b03c25aa2d3f7c71273aa7370085 100644 --- a/06/wordle1.py +++ b/06/wordle1.py @@ -19,15 +19,54 @@ def is_valid_guess(guess: str): def how_many_exact_matches(word1: str, word2: str) -> int: - ... + count: int = 0 + for i in range(len(word1)): + if word1[i] == word2[i]: + count += 1 + return count + + +def get_counts_of_letters_1(word: str) -> dict[str, int]: + d: dict[str, int] = {} + for letter in UPPERCASE_LETTERS: + count: int = 0 + for c in word: + if c == letter: + count += 1 + d[letter] = count + return d def get_counts_of_letters(word: str) -> dict[str, int]: - ... + d: dict[str, int] = {} + for c in word: + if c in d: + d[c] = d[c] + 1 + else: + d[c] = 0 + 1 + return d def how_many_overall_matches(guess: str, answer: str) -> int: - ... + guess_count = get_counts_of_letters(guess) + answer_count = get_counts_of_letters(answer) + + count: int = 0 + for letter in UPPERCASE_LETTERS: + count_a: int = 0 + if letter in guess_count: + count_a = guess_count[letter] + + count_b: int = 0 + if letter in answer_count: + count_b = answer_count[letter] + + count += min(count_a, count_b) + + return count + + +print(how_many_overall_matches("AAB", "BAC")) def play_wordle_game():