Solution to problem 6 in Python

This commit is contained in:
David Doblas Jiménez 2022-03-05 09:28:20 +01:00
parent 2b40cdd77a
commit 06e45ad41b

View File

@ -52,5 +52,34 @@ def part_1() -> None:
print(f"The message is {message}") print(f"The message is {message}")
# --- Part Two ---
# Of course, that would be the message - if you hadn't agreed to use a modified
# repetition code instead.
# In this modified code, the sender instead transmits what looks like random
# data, but for each character, the character they actually want to send is
# slightly less likely than the others. Even after signal-jamming noise, you
# can look at the letter distributions in each column and choose the least
# common letter to reconstruct the original message.
# In the above example, the least common character in the first column is a;
# in the second, d, and so on. Repeating this process for the remaining
# characters produces the original message, advent.
# Given the recording in your puzzle input and this new decoding methodology,
# what is the original message that Santa is trying to send?
def part_2() -> None:
_message = []
for column in signals_transp:
_message.append(Counter(column).most_common()[-1])
message = "".join((char[0][0]) for char in _message)
print(f"The message is {message}")
if __name__ == "__main__": if __name__ == "__main__":
part_1() part_1()
part_2()