1
$\begingroup$

When you rearrange the letters in the word "NO" in all possible ways you have NO ON These are both English dictionary words. Are there any 3 letter words where all 6 of the 3 letter permutations of its letters are also all words? For example, TEA rearranges to TEA TAE ETA EAT ATE AET. But, of course, not all of these are dictionary words!

$\endgroup$
5
  • 1
    $\begingroup$ Can you include acronyms? $\endgroup$ Jul 13, 2015 at 4:21
  • 3
    $\begingroup$ @valuable_asset: I think the OP definitely rules out acronyms, simply because there will always be something that abbreviates to the letters you want, especially in a 3 letter word. Also, in his example, he doesn't consider ETA (Estimated time of arrival), TAE (Tris base, acetic acid and EDTA) and AET (after extra time) to be valid words. $\endgroup$
    – CodeNewbie
    Jul 13, 2015 at 4:33
  • $\begingroup$ @JacobShetler - Welcome to puzzling.se Based on some forum discussions (which may or may not be correct), there are no 3 letter words that meet your criteria. Do you know of an answer or are you just wondering? $\endgroup$
    – Len
    Jul 13, 2015 at 5:27
  • $\begingroup$ @CodeNewbie: ETA is actually an accepted Scrabble word, as is TAE. AET is the only word that makes "TEA" fail this permutation rule. ETA is the 7th letter of the Greek alphabet (H), while TAE is the Scottish variant of "to." $\endgroup$
    – Curmudgeon
    Jul 13, 2015 at 11:44
  • $\begingroup$ Yes, the idea is that they would be acceptable Scrabble words. For an answer, I knew that EWE would work, but did not know of any 3 letter words that have 3 different letters. I now see that there are none. Thanks for all the help! $\endgroup$ Jul 13, 2015 at 15:05

3 Answers 3

4
$\begingroup$

I wrote a Python script which checks for the existence of these words - I couldn't find any.

import itertools
words = []

with open('dictionary.txt') as f:
    for line in f:
        if len(line.strip()) == 3:
            words += [line.strip().lower()]

def winner(word):
    global words
    with open('words.txt') as file:
        for combo in itertools.permutations(word,len(word)):
            if not ''.join(combo) in words:
                return False
    return True

for word in words:
    if(winner(word)):
        print(word)

If someone wants to try with a bigger dictionary than mine, go ahead!

Edit: Based upon the Scrabble dictionary VictorHenry has provided, there are four such sets of words:

eew,ewe,wee
hoo,oho,ooh
mmm
zzz

However, the validity of these 'words' is left for the reader to decide :)

$\endgroup$
5
  • $\begingroup$ What is your dictionary source? $\endgroup$
    – CodeNewbie
    Jul 13, 2015 at 5:51
  • $\begingroup$ @CodeNewbie I actually have no idea. I just have this ~2MB dictionary.txt file sitting in my python folder - Presumably I needed a dictionary a while ago. $\endgroup$
    – Tryth
    Jul 13, 2015 at 6:04
  • $\begingroup$ Hrm, it's disappointing that there appear to be no words with three different letters. Using double letters ('oo' in HOO or 'ee' in WEE), or even worse triple letters (MMM or ZZZ), feels like cheating, as you don't have to have 6 permutations. $\endgroup$ Jul 13, 2015 at 7:05
  • $\begingroup$ @Tryth Nice work! I thought about writing a script myself, but I'm on vacation and don't have access to a terminal (or a dictionary file). I was hoping that there would be a 3 letter word that has 3 different letters that would work, but I think EWE is the best answer. Just wondering, how long did it take your program to execute? $\endgroup$ Jul 13, 2015 at 15:08
  • $\begingroup$ @JacobShetler Fast. Less than a second. $\endgroup$
    – Tryth
    Jul 13, 2015 at 21:02
3
$\begingroup$

Apparently the word "EEW" was just added to the fifth edition of the OSPD which is the Official Scrabble Players Dictionary. It is, as you would expect, an expression of disgust ("eew gross!")

Of course, EEW can be anagrammed to WEE and EWE, both of which are also words.

ZZZ (already suggested by valuable_asset) is also an acceptable Scrabble word in that edition of the OSPD.

I was going to write a Python program, but Tryth has already done so. That being said, Tryth, you might want to use this list of 3-letter Scrabble words for your program and see if you have any better luck.

Edit: Apparently HOO, OHO, and OOH are all words in that dictionary as well.

$\endgroup$
1
$\begingroup$

Maybe

ZZZ

I really should have gotten some sleep yesterday

$\endgroup$
3
  • $\begingroup$ Just as a side note, should it be 'got' or 'gotten' in the last sentence of my answer above. Grammar nazis assemble. $\endgroup$ Jul 13, 2015 at 6:36
  • 1
    $\begingroup$ 'Gotten' is correct. 'Got' is past tense, 'Gotten' is past participle. In general, if you're using a verb with has/have/had, you'll use the past participle. $\endgroup$ Jul 13, 2015 at 7:06
  • $\begingroup$ I am upvoting to get rid of that beastly numbered reputation (a.k.a. the number of the beast). $\endgroup$
    – Mr Pie
    Aug 12, 2018 at 11:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.