« Boston Python puzzles

A is for Anaconda

Alphabetizing isn't just useful. It's fun!

Every kid learns that A is for Apple ... and Z is for Zebra.

But not every kid learns the mirror-alphabet words:

A is for Anaconda
B is for Bathtub
C is for Comic
...
Z is for Zizz

Not only are the first letters of each word alphabetic, so are the last letters!

Unfortunately, you can't complete this list: no word in English begins and ends with X.

But what if you shift the alphabet by one letter for the ending?

A is for Absorb
B is for Byronic
C is for Caryatid
...
X is for Xenophoby
Y is for Yez
Z is for Zebra

You'll find that this won't work either. How about shifting the end letter alphabet by 2?

A is for Antihemorrhagic
B is for Blindfold
C is for Capstone
...
Y is for Yoga
Z is for Zimb

That fails, too! In fact, there is only one mirror-alphabetic ordering that works for English.

1) Write a program that generates a valid mirror-alphabet word list.

2) What is the one word that always sticks out like a sore thumb in your mirror-alphabet list if you try to limit the list to 4-letter words? (Hint: It's a style of handwriting.)

BONUS: Make a mirror-alphabet word list that has the least weird words. (These might be useful.)

Solutions

If you have a solution you'd like to share see the Solutions page for instructions.