Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- input_string_1 = """3 15 4
- 4 2 3 3 9
- F L Y W B E G A L K R U B E T
- L H G E C K Y U B H L U G A F
- K Y F M P U B K F I G O N S Y"""
- input_string_2 = """4 13 6
- 7 4 1 4 3 5 1 4
- P I M L H A K E D P I L A
- M E H D E L P R I C A T H
- L I G R H P E D L E T I P
- H A D G H L O I D O N P D"""
- input_string = {}
- input_string[1] = input_string_1
- input_string[2] = input_string_2
- def get_noise_threshold(input_string):
- return int(input_string.split("\n")[0][-1])
- def get_letters(input_string):
- letters = input_string.split("\n")[2:]
- letters = " ".join(letters).split(" ")
- return letters
- def get_word_lengths(input_string):
- line_2 = input_string.split("\n")[1]
- word_lengths = [int(wl) for wl in line_2.split(" ")]
- return word_lengths[1:]
- def get_counter(letters):
- counter = {}
- for a in set(letters):
- counter[a] = 0
- for a in letters:
- counter[a] += 1
- return counter
- def get_message(letters, counter_letters, noise_threshold):
- return [a for a in letters if counter_letters[a] != noise_threshold]
- def print_message(msg, word_lengths):
- output_string = []
- start = 0
- for length in word_lengths:
- output_string.append("".join(msg[start:start + length]))
- start = start + length
- print(" ".join(output_string))
- def main():
- testcase = input_string[1]
- noise_threshold = get_noise_threshold(testcase)
- letters = get_letters(testcase)
- word_lengths = get_word_lengths(testcase)
- counter_letters = get_counter(letters)
- msg = get_message(letters, counter_letters, noise_threshold)
- print_message(msg, word_lengths)
- if __name__ == "__main__":
- main()
Add Comment
Please, Sign In to add comment