All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > General
A coded text (Posted on 2020-06-26) Difficulty: 4 of 5
My message, consisting of 4 words (none of them esoteric) is endorsed by many followers, so I will not bother to define it as a proverb, catch phrase or quotation.
I will rather provide now few details how the process of coding was done and if you are willing to take chances you will easily solve it analytically.

So, here we go:

a. The 4 words of my message are of distinct lengths.
b. Prior to the coding I've erased the 3 spaces to form a continuous chain.
c. Then I've partitioned this chain of letters into triplets - the order was not disturbed.
d. Each triplet then was replaced by the product of the numerical values of all its letters (i.e. 1 for A, 2 for B, ..., 26 for Z).

To illustrate the process let's start with a sample phrase - MONEY TIME NOW:
a. MONEYTIMENOW
c. MON EYT IME NOW
d. 2730, 2500, 585, 4830

It looks terrifying? It is not!!

Now my text, coded accordingly:

1620, 5880, 30, 5940, 3040, 150, 48.

After recovering the original text, please comment upon its source and meaning.

Bonne pioche!

See The Solution Submitted by Ady TZIDON    
No Rating

Comments: ( Back to comment list | You must be logged in to post comments.)
Solution Solution (spoiler) | Comment 1 of 5
First, I wrote a Python routine to identify groups of 3 letters which could be equivalent to any possible numeric code, and put it in a "dictionary".  The program prints out every possible 3 letter group for each number on a line.  This makes it fairly easy to visually parse through the possibilities.

# Python Program
# make a dictionary where key will be the integer products
# and the value will be a list of all possible letter combinations
# which can take on that integer product
d = {}   #  a dictionary
for i in range(1,27):
    for j in range(i,27):
        for k in range(j,27):
            key = i*j*k
            value = [chr(i+64) + chr(j+64) + chr(k+64)]
            if key not in d:
                d[key] = value
            elif key in d:
                d[key] = d[key] + value
               
print('test message below')
testMessage = [2730, 2500, 585, 4830]
for c in testMessage:
    print(d[c])

print('coded message below')
message1 = [1620, 5880, 30, 5940, 3040, 150, 48]
for c in message1:
    print(d[c])

--------------  OUTPUT  -------------- 
test message below
['EUZ', 'GOZ', 'JMU', 'MNO']
['DYY', 'ETY', 'JJY']
['CMO', 'EIM']
['JUW', 'NOW']
coded message below
['ERR', 'FOR', 'IIT', 'IJR', 'ILO']
['NTU']
['ABO', 'ACJ', 'AEF', 'BCE']
['ORV']
['HST', 'JPS']
['AFY', 'AJO', 'BCY', 'BEO', 'CEJ', 'EEF']
['ABX', 'ACP', 'ADL', 'AFH', 'BBL', 'BCH', 'BDF', 'CDD']

-------------- 
Fortune Favors The Bold
note that it is not "Bolda", because since A=1, the final group of letters 'ADL' is the same as 'DL'

  Posted by Larry on 2020-06-26 09:25:23
Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


Search:
Search body:
Forums (0)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (16)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Chatterbox:
Copyright © 2002 - 2024 by Animus Pactum Consulting. All rights reserved. Privacy Information