{}
🎃 THIS OCTOBER
Build spooky. Win treats. Get featured on the Wall. Join Challenge
🎃 THIS OCTOBER
Build spooky. Win treats. Get featured. Join Challenge
run-icon
main.py
from collections import defaultdict # Dictionary of letter values letter_values = { 'a': 22, 'b': 30, 'c': 300000000, 'd': 0, 'e': 2.7, 'f': 6, 'g': 9.8, 'h': 9, 'i': 'sqrt-1', 'j': '1/2(sqrt-1)', 'k': 11, 'l': 1000, 'm': 4, 'n': 3, 'o': 8, 'p': 7, 'q': 12, 'r': 'sqrt2', 's': 16, 't': 3.14, 'u': 2, 'v': 5, 'w': 18, 'x': 10, 'y': 120, 'z': 26, ' ': '␣' } # Normalize values as strings normalized_values = {k: str(v) for k, v in letter_values.items()} # Build reverse lookup reverse_values = defaultdict(list) for letter, val_str in normalized_values.items(): reverse_values[val_str].append(letter) # Decode function def decode_text(encoded_str): decoded = [] tokens = encoded_str.split(',') for token in tokens: token = token.strip() if token in reverse_values: decoded.append(reverse_values[token][0]) # Pick first if multiple else: decoded.append('?') # Unknown value return ''.join(decoded) # --- MAIN PROGRAM --- # Get user input encoded_input = input("Enter encoded values (comma-separated): ") decoded_output = decode_text(encoded_input) print("Decoded text:", decoded_output)
Output