10
$\begingroup$

Which word has the highest normalized score according to the following:

  • Assign each individual letter A..Z of an (English) word a value corresponding to the n'th prime (see table below).
  • Take the product of its letter values.
  • Normalization: Take the log10 of that product, and divide by the wordlength.
  • (See Python example code below)
  • Please state the wordlength along with its score

Examples:

  • SYZYGY = 1.83686.. (6 letters)
  • WOW = 1.83675.. (3 letters)
  • SYZYGIUM = 1.73403.. (8 letters)
  • WOODWORKING = 1.56381.. (11 letters)

(The normalization is to prefer everyday English words over IUPAC chemical names or 'Pneumonoultramicroscopicsilicovolcanoconiosis').

Letter values A:2 B:3 C:5 D:7 E:11 F:13 G:17 H:19 I:23 J:29 K:31 L:37 M:41 N:43 O:47 P:53 Q:59 R:61 S:67 T:71 U:73 V:79 W:83 X:89 Y:97 Z:101

Some Python example code:

import string
from math import log10

primes = { letter_prime[0]:letter_prime[1] for letter_prime in zip(string.ascii_uppercase, [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101])}
{'A': 2, 'B': 3, 'C': 5, 'D': 7, 'E': 11, 'F': 13, 'G': 17, 'H': 19, 'I': 23, 'J': 29, 'K': 31, 'L': 37, 'M': 41, 'N': 43, 'O': 47, 'P': 53, 'Q': 59, 'R': 61, 'S': 67, 'T': 71, 'U': 73, 'V': 79, 'W': 83, 'X': 89, 'Y': 97, 'Z': 101}

def letter_prime_score(word):
    prod = 1
    for letter in word:
        prod *= primes[letter]
    return log10(prod) / len(word)

letter_prime_score('SYZYGY')
1.8368600501100796

letter_prime_score('WOW')
1.8367513475626218

letter_prime_score('SYZYGIUM')
1.734027889906502

letter_prime_score('WOODWORKING')
1.5638076854903682
$\endgroup$
10
  • 1
    $\begingroup$ It depends on you want a longest word contest or not; I feel that a ridiculously long word should win the contest every time, even if a word like zyzzyva = $101^3 \times 97^2 \times 79 \times 2$ is oodles more efficient in generating a high score on a per letter basis. $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:07
  • $\begingroup$ @El-Guest: right, totally. Let's normalize its log by wordlength. $\endgroup$
    – smci
    Commented Aug 28, 2018 at 20:09
  • $\begingroup$ smci, to be honest, this kind of favours a shortest word contest now haha ;P $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:26
  • $\begingroup$ @El-Guest: yeah, don't know how to avoid that unless you can suggest a better normalization. How about trying to find the highest 3-letter word, 4-leter, etc. $\endgroup$
    – smci
    Commented Aug 28, 2018 at 20:31
  • $\begingroup$ Yeah, that might be the best way to do things! If you go from 1 to as high as you want, I can supply "I" and "OZ" immediately haha $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:32

5 Answers 5

7
$\begingroup$

The word that I got was ZYZZYVA, a valid Scrabble word, and a type of snouted beetle, most famous for being the final word in the dictionary. The total points are $101^3 \times 97^2 \times 79 \times 2$, which is equal to $1.5316681 \times 10^{12}$. If we normalize this by taking the logarithm and dividing by the number of letters in the word, we get $\frac{\log 1.5316681 \times 10^{12}}{7} \approx 1.74073781098$.

In comparison, SYZYGIUM results in $\frac{\log 74511467904889}{8} \approx 1.73402788991$.

WOODWORKING results in $\frac{\log 159178548575947607}{11} \approx 1.56380768549$.

PNEUMONOULTRAMICROSCOPICSILICOVOLCANOCONIOSIS results in $\frac{\log 2.09 \times 10^{65}}{45} \approx 1.45155880636$.

Update On the other hand, my first suggestion punished long words as much as it favoured small words. Therefore:

1 letter: I results in $\frac{\log 23}{1} \approx 1.36172783602$.
2 letter: XU results in $\frac{\log 73 \times 89}{2} \approx 1.90635643338$.
Note: This word found by @Herb Wolfe! Go upvote their answer!! :D
3 letter: ZZZ results in $\frac{\log 1030301}{3} \approx 2.00432137378$.
Note: Check the link for ZZZ, it's in the Merriam Scrabble Dictionary!
4 letter: ZIZZ results in $\frac{\log 23696923}{4} \approx 1.84367298934$.
Note: Apparently ZIZZ is in the Merrriam Scrabble Dictionary too!
5 letter: ZZYZX results in $\frac{\log 8694710139}{5} \approx 1.98785102165$.
6 letter: ZYZZYX results in $\frac{\log 862775087701}{6} \approx 1.98931626609$.
Note: This word found by @peaceoutside! Go upvote their answer!! :D
7 letter: ZYZZYVA results in $\frac{\log 1.5316681 \times 10^{12}}{7} \approx 1.74073781098$.
8 letter: ZYZZYZUS results in $\frac{\log 4.7887992 \times 10^{15}}{8} \approx 1.96002832831$.

$\endgroup$
12
  • 1
    $\begingroup$ @smci, how about these others? $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:37
  • 1
    $\begingroup$ Huh, I missed ZZZ in the Merriam Scrabble Dictionary. $\endgroup$
    – Herb
    Commented Aug 28, 2018 at 20:48
  • 1
    $\begingroup$ Excellent! $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:58
  • 1
    $\begingroup$ At 10-letters I see TOPSYTURVY for 1.8444788482629637 (beating ZIZZ!) $\endgroup$ Commented Aug 28, 2018 at 21:42
  • 1
    $\begingroup$ @smci - I have posted a result of a Python script run across a list of words acquired from the internet, it has TOPSYTURVY as the entry for length 10 :) $\endgroup$ Commented Aug 29, 2018 at 10:03
7
$\begingroup$

Zyzzyx

is 1.989316266087555

It's a genus of sand wasp, as well as a road, an album title, a film title, a place in California and a few other things.

$\endgroup$
2
  • $\begingroup$ I guess that's unbeatable. Presumed winner for 6-letter words $\endgroup$
    – smci
    Commented Aug 28, 2018 at 20:32
  • 3
    $\begingroup$ Nice find -- if names are admitted -- but the California place name is Zzyzx. $\endgroup$
    – Rosie F
    Commented Aug 29, 2018 at 6:51
6
$\begingroup$

Using the list of words in the souptonuts project and a little Python I get these (word length, score, word) tuples - the first two seem dubious as "English words", but I include them since I'm using that list:

1  2.00432137378   Z
2  2.00432137378   ZZ
3  2.00432137378   ZZZ
4  1.9308059891    TUZZ
5  1.95556308687   WUZZY
6  1.88381542586   XYSTUS
7  1.87044896192   ZYZOMYS
8  1.83260090565   UNTRUSTY
9  1.82296096305   SYSTYLOUS
10 1.84447884826   TOPSYTURVY
11 1.79318782406   TORTUROUSLY
12 1.78637729544   UNTORTUOUSLY
13 1.78210192156   UNTRUSTWORTHY
14 1.77762365381   UNTUMULTUOUSLY
15 1.75526497378   NONTUMULTUOUSLY
16 1.73158108016   UNPRESUMPTUOUSLY
17 1.71182422909   NONTUMULTUOUSNESS
18 1.7002751909    OVERPRESUMPTUOUSLY
19 1.67396629859   OVERSUPERSTITIOUSLY
20 1.6688495362    OVERPRESUMPTUOUSNESS
21 1.64654271243   OVERSUPERSTITIOUSNESS
22 1.5654574758    OTORHINOLARYNGOLOGISTS
23 1.58471955554   PSYCHONEUROIMMUNOLOGIST
24 1.59477602418   PSYCHONEUROIMMUNOLOGISTS
25 1.45302344974   SUPERINCOMPREHENSIBLENESS
26 1.33951040188   ANTIESTABLISHMENTARIANISMS
27 1.53394460557   HYDROXYDESOXYCORTICOSTERONE
28 1.48393646489   HYDROXYDEHYDROCORTICOSTERONE
29 1.532979713     TRINITROPHENYLMETHYLNITRAMINE
30 1.50665471943   HIPPOPOTOMONSTROSESQUIPEDALIAN
31 1.39171062494   DICHLORODIPHENYLTRICHLOROETHANE
32 1.4052845055    DICHLORODIPHENYLTRICHLOROETHANES
34 1.39093530773   DIAMINOPROPYLTETRAMETHYLENEDIAMINE
45 1.45154686507   PNEUMONOULTRAMICROSCOPICSILICOVOLCANOCONIOSIS
58 1.46558961766   LLANFAIRPWLLGWYNGYLLGOGERYCHWYRNDROBWLLLLANTYSILIOGOGOGOCH  

Here is example code in Python 3 (hosted at Try It Online! A site maintained by codegolf.stackexchange moderator Dennis)

  • it takes the list of words as input -- that needs changing to access and parse a file with the words in if you want to use it with a huge word list like I did.
$\endgroup$
2
  • $\begingroup$ Sorry I can only accept one answer, this was superb $\endgroup$
    – smci
    Commented Sep 5, 2018 at 13:12
  • $\begingroup$ Sure, this was intended more as an addendum to El-Guest's answer anyway. Thanks! $\endgroup$ Commented Sep 5, 2018 at 17:04
5
$\begingroup$

For two letter words:

Xu, a monetary unit of Viet Nam scores 1.90635...

For three letter words, I came with:

Zuz, an ancient Hebrew silver coin scores 1.95732...

Initially I had thought of

Zax, a tool for cutting roof slates, however it only scores 1.41824...

For a four letter word:

Zizz, to make a buzzing sound. Score: 1.84367

$\endgroup$
2
  • 1
    $\begingroup$ It's scary how much of an effect A has on the score! $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:40
  • 1
    $\begingroup$ Nice 2 letter find! $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 21:04
2
$\begingroup$

So far:

  • 4 letters: ZIZZ = 1.84367..
  • 6 letters: SYZYGY = 1.83686..
  • 3 letters: WOW = 1.83675..
  • 5 letters: PROPS = 1.74641..
  • 4 letters: ZIPS = 1.7291
  • 5 letters: WHUPS = 1.72230..
  • 8 letters: PROSPERS = 1.67311..
  • 7 letters: PROSPER = 1.65125..
  • 6 letters: SPORES = 1.64587..
  • 7 letters: ZIPPERS = 1.6382..
  • 8 letters: PAROXYSM = 1.60722..

(We added normalization to exclude freaks like PNEUMONOULTRAMICROSCOPICSILICOVOLCANOCONIOSIS which scored a ridiculous 2.09e+65 without normalization, but only 1.45155 after).

$\endgroup$
1
  • 1
    $\begingroup$ PAROXYSM is 8 letters, and is beaten by both SYZYGIUM and ZYZZYZUS I think $\endgroup$
    – El-Guest
    Commented Aug 28, 2018 at 20:46

Your Answer

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

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