0
$\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$
  • 1
    $\begingroup$ Can you include acronyms? $\endgroup$ – valuable_asset Jul 13 '15 at 4:21
  • 2
    $\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 '15 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 '15 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 '15 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$ – Jacob Shetler Jul 13 '15 at 15:05
3
$\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$
  • $\begingroup$ What is your dictionary source? $\endgroup$ – CodeNewbie Jul 13 '15 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 '15 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$ – VictorHenry Jul 13 '15 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$ – Jacob Shetler Jul 13 '15 at 15:08
  • $\begingroup$ @JacobShetler Fast. Less than a second. $\endgroup$ – Tryth Jul 13 '15 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$
  • $\begingroup$ Just as a side note, should it be 'got' or 'gotten' in the last sentence of my answer above. Grammar nazis assemble. $\endgroup$ – valuable_asset Jul 13 '15 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$ – VictorHenry Jul 13 '15 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 '18 at 11:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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