Skip to content

Instantly share code, notes, and snippets.

@benjaminp
Last active August 29, 2015 14:09
Show Gist options
  • Save benjaminp/92c2a21c347408c350a7 to your computer and use it in GitHub Desktop.
Save benjaminp/92c2a21c347408c350a7 to your computer and use it in GitHub Desktop.
On Word "Sums"
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "",
"signature": "sha256:5a67ad805ac432c4b9471c590cb1ff9fbbf01dcfa415236c3a54dfc209d0b98d"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"On Word \"Sums\""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"By assigning numbers to letters (1 to 'a', 2 to 'b', and so forth), we can associate a number to any word by summing the numbers corresponding to its component letters. For entertainment, we might ask uninspiring questions like \"What words sum to 100?\". If we were really bored (or wanted to avoid doing actual work), we could answer these questions\u2014and more!\u2014with a few lines of code. SIL International provides a [list of more than 100,000 English words](http://www-01.sil.org/linguistics/wordlists/english/), which will be used in this analysis.\n",
"\n",
"Let's start by reading the data and computing how many words there are that sum to 100:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import collections\n",
"words_by_sum = collections.defaultdict(list)\n",
"processed = 0\n",
"with open(\"wordsEn.txt\", encoding=\"ascii\") as fp:\n",
" for line in fp:\n",
" word = line.rstrip()\n",
" if not word or \"'\" in word:\n",
" continue\n",
" processed += 1\n",
" word_sum = sum(ord(letter) - 96 for letter in word)\n",
" words_by_sum[word_sum].append(word)\n",
"print(\"{} out of {} words sum to 100.\".format(len(words_by_sum[100]), processed))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"1297 out of 109562 words sum to 100.\n"
]
}
],
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here's what some of these words are:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import random\n",
"for i in range(5):\n",
" print(random.choice(words_by_sum[100]))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"flurry\n",
"hutzpah\n",
"bronzy\n",
"apropos\n",
"taxying\n"
]
}
],
"prompt_number": 31
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"flurry! hutzpah! apropos! I love it! e.g. \"Apropos nothing, you sure have a lot of hutzpah assigning this dull computational problem as homework.\"\n",
"\n",
"Okay, I suppose that answers the immediate question, but I haven't wasted quite enougth time yet. Which words have the largest and smallest sums?"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"smallest_sum = min(words_by_sum.keys())\n",
"largest_sum = max(words_by_sum.keys())\n",
"print(\"\\\"{}\\\" has sum {}.\".format(words_by_sum[smallest_sum][0], smallest_sum))\n",
"print(\"\\\"{}\\\" has sum {}.\".format(words_by_sum[largest_sum][0], largest_sum))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\"a\" has sum 1.\n",
"\"antidisestablishmentarianism\" has sum 307.\n"
]
}
],
"prompt_number": 54
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I guess that's not too surprising... Perhaps it's more interesting to ask what the longest and shortest words with sum 100 are."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"by_length = sorted(words_by_sum[100], key=len)\n",
"shortest = []\n",
"longest = []\n",
"for word in by_length:\n",
" if len(word) != len(by_length[0]):\n",
" break\n",
" shortest.append(word)\n",
"for word in reversed(by_length):\n",
" if len(word) != len(by_length[-1]):\n",
" break\n",
" longest.append(word)\n",
"print(\"These words are the shortest with sum 100: {}\".format(\", \".join(shortest)))\n",
"print(\"These words are the longest with sum 100: {}\".format(\", \".join(longest)))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"These words are the shortest with sum 100: nutty, pussy\n",
"These words are the longest with sum 100: decalcomanias, adiabatically\n"
]
}
],
"prompt_number": 4
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What's the average word sum?"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"weighted_sum = sum(len(words)*s for s, words in words_by_sum.items())\n",
"print(\"The average sum is {:.2f}.\".format(weighted_sum/processed))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"The average sum is 100.64.\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Interesting! Now, what's a \"scientific\" analysis such as this without a graph? Here's a histogram over all the word sums:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%matplotlib inline\n",
"from matplotlib.pyplot import figure, hist\n",
"data = []\n",
"for s, words in words_by_sum.items():\n",
" data.extend([s]*len(words))\n",
"figure(figsize=(18,18))\n",
"plt = hist(data, bins=40)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAABCUAAAQNCAYAAABq9/DJAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3W/I7/d91/HX2x5SU4ktYRL7b2vQU9pIFRs0u6O9dFrC\nkKY3RpOCIbpMmAE37wySCfbcKi0iJd5IwT9tk2HD4ja6FkNsrL1wN+yiboxgFpIKqT2ZyaTbWhDU\nhH68cb5pr6an5zS/6/zyOtfJ4wEl39/n9/1+rs8Pfr0Cz3w/32vWWgEAAAB4tf2x9gIAAACA1yZR\nAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqLhglJiZT83M8zPz+JGxfzIzvzszvzMzvzYz\nbzzy3j0z8/TMPDkz7z8yfuPMPL69d++R8dfPzC9v41+ZmR+71B8QAAAAuDxd7E6JTye5+WVjX0zy\n59ZafyHJU0nuSZKZuSHJrUlu2K65b2Zmu+aTSe5ca51OcnpmXprzziTf2MY/keTjx/w8AAAAwAlx\nwSix1vqNJH/4srFH11rf3l7+ZpK3bce3JHlwrfXCWuuZJF9NctPMvDnJNWutx7bzHkjywe34A0nu\n345/NclPHOOzAAAAACfIcZ8p8dNJHt6O35Lk7JH3ziZ563nGn93Gs/3z60my1noxyTdn5tpjrgkA\nAAA4AU7teuHM/KMk/2+t9dlLuJ4f9LPWvn8GAAAAsJu11lz8rO+3U5SYmb+T5Cfzvdstnk3y9iOv\n35Zzd0g8m+9u8Tg6/tI1P5rk92bmVJI3rrX+4Hw/cy1dgt2cOXMmZ86caS+DE8h3h+Pw/WFXvjsc\nh+8Pu/Ld4Ti++zjJV+4Vb9/YHlL5C0luWWv9nyNvfT7JbTNz1cxcn+R0ksfWWs8l+dbM3LQ9+PL2\nJL9+5Jo7tuOfSvKlHT8HAAAAcMJc8E6JmXkwyfuS/MjMfD3JR3Lur21cleTRrYb8p7XWXWutJ2bm\noSRPJHkxyV3ru7c33JXkM0muTvLwWuuRbfxfJfmlmXk6yTeS3HYpPxwAAABw+bpglFhrffg8w5+6\nwPkfTfLR84z/1yTvOc/4/03yoYsvE3Z3cHDQXgInlO8Ox+H7w658dzgO3x925btDy5yEZzXMzDoJ\n6wQAAIDXmpnZ+UGXx/2ToAAAAAA7ESUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIA\nAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAl\nAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAK\nUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAA\nqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAA\nAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClEC\nAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQ\nJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACA\nClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAA\nAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUA\nAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApR\nAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACo\nECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAA\ngApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIA\nAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAl\nAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoONVeAMClMjN7mXettZd5AQDgtU6UAK4wlzog7Cd0AAAA\ntm8AAAAAJaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAA\nABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQA\nAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVF4wSM/OpmXl+Zh4/MnbtzDw6M0/N\nzBdn5k1H3rtnZp6emSdn5v1Hxm+cmce39+49Mv76mfnlbfwrM/Njl/oDAgAAAJeni90p8ekkN79s\n7O4kj6613pnkS9vrzMwNSW5NcsN2zX0zM9s1n0xy51rrdJLTM/PSnHcm+cY2/okkHz/m5wEAAABO\niAtGibXWbyT5w5cNfyDJ/dvx/Uk+uB3fkuTBtdYLa61nknw1yU0z8+Yk16y1HtvOe+DINUfn+tUk\nP7Hj5wAAAABOmF2eKXHdWuv57fj5JNdtx29JcvbIeWeTvPU8489u49n++fUkWWu9mOSbM3PtDmsC\nAAAATphTx7l4rbVmZl2qxVzImTNnvnN8cHCQg4ODV+PHAgAAAEccHh7m8PDwksw1a124KczMO5J8\nYa31nu31k0kO1lrPbVszvrzWetfM3J0ka62Pbec9kuQjSb62nfPubfzDSf7qWuvvb+ecWWt9ZWZO\nJfmfa60/dZ41rIutE+DcY2wu9e+Kid8/AADwg81M1lpz8TO/3y7bNz6f5I7t+I4knzsyftvMXDUz\n1yc5neSxtdZzSb41MzdtD768Pcmvn2eun8q5B2cCAAAArwEXvFNiZh5M8r4kP5Jzz4/4xzkXFB5K\n8qNJnknyobXWH23n/2KSn07yYpKfX2v9u238xiSfSXJ1kofXWj+3jb8+yS8l+YtJvpHktu0hmS9f\nhzslgItypwQAALz6jnOnxEW3b1wORAnghyFKAADAq+/V3r4BAAAAcGyiBAAAAFAhSgAAAAAVogQA\nAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQcaq9AODyNTN7m3uttbe5\nAQCAk0GUAC5iH/Fgf7EDAAA4OWzfAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAA\noEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAA\nAAAqTrUXAHC5m5m9zLvW2su8AABwUogSABe1j3iwn9ABAAAnie0bAAAAQIUoAQAAAFSIEgAAAECF\nKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAA\nVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAA\nAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgB\nAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSI\nEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABA\nhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQMWp9gKA\n16aZaS8BAAAoEyWAkrWHOYUOAAA4SWzfAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJ\nAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACg4lR7AcDxzUx7CQAAAK+YKAFXjLWHOcUOAABg\nf2zfAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAA\nAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJ\nAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBC\nlAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAA\nKkQJAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAA\nAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQA\nAAAAKkQJAAAAoEKUAAAAACpECQAAAKBClAAAAAAqRAkAAACgQpQAAAAAKkQJAAAAoGLnKDEz98zM\nf5uZx2fmszPz+pm5dmYenZmnZuaLM/Oml53/9Mw8OTPvPzJ+4zbH0zNz73E/EAAAAHAy7BQlZuYd\nSf5ekveutd6T5HVJbktyd5JH11rvTPKl7XVm5oYktya5IcnNSe6bmdmm+2SSO9dap5Ocnpmbd/40\nAAAAwImx650S30ryQpI3zMypJG9I8ntJPpDk/u2c+5N8cDu+JcmDa60X1lrPJPlqkptm5s1Jrllr\nPbad98CRawAAAIAr2E5RYq31B0n+aZL/kXMx4o/WWo8muW6t9fx22vNJrtuO35Lk7JEpziZ563nG\nn93GAQAAgCvcqV0umpk/k+QfJnlHkm8m+Tcz87ePnrPWWjOzjr3CzZkzZ75zfHBwkIODg0s1NQAA\nAPBDOjw8zOHh4SWZa9Z65d1gZm5N8jfXWj+zvb49yY8n+etJ/tpa67lta8aX11rvmpm7k2St9bHt\n/EeSfCTJ17Zz3r2NfzjJ+9ZaP/uyn7d2WSe8Vpx7RMs+/j9i3n2u1e81AACuBDOTtdZc/Mzvt+sz\nJZ5M8uMzc/X2wMq/keSJJF9Icsd2zh1JPrcdfz7JbTNz1cxcn+R0ksfWWs8l+dbM3LTNc/uRawAA\nAIAr2E7bN9ZavzMzDyT5L0m+neS3kvzzJNckeWhm7kzyTJIPbec/MTMP5Vy4eDHJXUdufbgryWeS\nXJ3k4bXWIzt/GgAAAODE2Gn7xqvN9g24MNs39jmv7RsAAHAhje0bAAAAAMciSgAAAAAVogQAAABQ\nIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAA\nABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQA\nAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVp9oLAHitmpm9zLvW2su8AABwqYkS\nADX7iAcjdgAAcGKIEgBXnP3EDgAAuNQ8UwIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQ\nJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACA\nClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAA\nAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUA\nAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApR\nAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACo\nECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAA\ngApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIA\nAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAl\nAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAK\nUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAA\nqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAA\nAIAKUQIAAACoECUAAACAClECAAAAqBAlAAAAgApRAgAAAKgQJQAAAIAKUQIAAACoONVeALyWzEx7\nCQAAAJcNUQJedWsPc4odAADAyWP7BgAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAA\nABWiBAAAAFAhSgAAAAAVogQAAABQcaq9AABOhpnZy7xrrb3MCwDA5U+UAOCHtI94sJ/QAQDAyWD7\nBgAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFCxc5SYmTfNzK/MzO/O\nzBMzc9PMXDszj87MUzPzxZl505Hz75mZp2fmyZl5/5HxG2fm8e29e4/7gQAAAICT4Th3Styb5OG1\n1ruT/PkkTya5O8mja613JvnS9jozc0OSW5PckOTmJPfNzGzzfDLJnWut00lOz8zNx1gTAAAAcELs\nFCVm5o1J/spa61NJstZ6ca31zSQfSHL/dtr9ST64Hd+S5MG11gtrrWeSfDXJTTPz5iTXrLUe2857\n4Mg1AAAAwBVs1zslrk/yv2bm0zPzWzPzL2bmTyS5bq31/HbO80mu247fkuTskevPJnnrecaf3cYB\nAACAK9yuUeJUkvcmuW+t9d4k/zvbVo2XrLVWknW85QEAAABXqlM7Xnc2ydm11n/eXv9KknuSPDcz\nf3qt9dy2NeP3t/efTfL2I9e/bZvj2e346Piz5/uBZ86c+c7xwcFBDg4Odlw6AAAAsKvDw8McHh5e\nkrnm3A0NO1w48x+T/Mxa66mZOZPkDdtb31hrfXxm7k7yprXW3duDLj+b5C/n3PaMf5/kz6611sz8\nZpKfS/JYkn+b5J+ttR552c9au64TLifnnu+6j++yefc370la68mc1+93AICTbWay1pqLn/n9dr1T\nIkn+QZJ/PTNXJfnvSf5uktcleWhm7kzyTJIPJcla64mZeSjJE0leTHLXkcpwV5LPJLk65/6ax/cE\nCQAAAODKtPOdEq8md0pwpXCnxEmc9ySt9WTO6/c7AMDJdpw7JXZ90CUAAADAsYgSAAAAQIUoAQAA\nAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIA\nAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAEDFqfYC4HI0M+0lAAAAXPFECfiB1h7mFDsAAABe\nYvsGAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAA\nAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoA\nAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWi\nBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQ\nIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAA\nABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQA\nAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFK\nAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAV\nogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAA\nUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAA\nAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIE\nAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAh\nSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVp9oLAOC1bWb2Mu9a\nay/zAgBw6YgSAJTtIx7sJ3QAAHBp2b4BAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIA\nAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUo\nAQAAAFSIEgAAAECFKAEAAABUiBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFSIEgAAAECFKAEAAABU\niBIAAABAhSgBAAAAVIgSAAAAQIUoAQAAAFQcK0rMzOtm5rdn5gvb62tn5tGZeWpmvjgzbzpy7j0z\n8/TMPDkz7z8yfuPMPL69d+9x1gMAAACcHMe9U+LnkzyRZG2v707y6FrrnUm+tL3OzNyQ5NYkNyS5\nOcl9MzPbNZ9Mcuda63SS0zNz8zHXBAAAAJwAO0eJmXlbkp9M8i+TvBQYPpDk/u34/iQf3I5vSfLg\nWuuFtdYzSb6a5KaZeXOSa9Zaj23nPXDkGgAAAOAKdpw7JT6R5BeSfPvI2HVrree34+eTXLcdvyXJ\n2SPnnU3y1vOMP7uNAwAAAFe4U7tcNDN/K8nvr7V+e2YOznfOWmvNzDrfe7s4c+bMd44PDg5ycHDe\nHwsAAADs0eHhYQ4PDy/JXLPWK+8GM/PRJLcneTHJH0/yJ5P8WpK/lORgrfXctjXjy2utd83M3Umy\n1vrYdv0jST6S5GvbOe/exj+c5H1rrZ992c9bu6wTdnXukSf7+M6Z9+TNe5LWat6j8/r3BgDAq2Nm\nstaai5/5/XbavrHW+sW11tvXWtcnuS3Jf1hr3Z7k80nu2E67I8nntuPPJ7ltZq6ameuTnE7y2Frr\nuSTfmpmbtgdf3n7kGriomdnL/wAAANi/nbZvnMdL/znqY0kempk7kzyT5ENJstZ6YmYeyrm/1PFi\nkruO3PpwV5LPJLk6ycNrrUcu0Zp4zdjXf70FAABgn3bavvFqs32DH8Q2C/Puf96TtFbzfu+8++Hf\nRwAA3+s42zcu1Z0SAHCZOVmxAwDgteg4fxIUAAAAYGeiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAA\nFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAA\nAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoA\nAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWi\nBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQ\nIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAA\nABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQA\nAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFK\nAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAV\nogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAA\nUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAA\nAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIE\nAAAAUHGqvQAAOElmZi/zrrX2Mi8AwOVMlACAV2Qf8WA/oQMA4HJn+wYAAABQIUoAAAAAFaIEAAAA\nUCFKAAAAABWiBAAAAFAhSgAAAAAVogQAAABQIUoAAAAAFaIEAAAAUCFKAAAAABWiBPD/27u7EM3P\n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\nquprVfXe5bi9h32dZf3YfzirqvqxqvpyVd1VVSer6g+W4/Ye9nWW9XMoe89anylRVZck+fckr8/2\nDTG/kuRtLu9gL1X1rSRXdfd/7zj24ST/1d0fXsLWT3T3+8cmydqoql9I8nCSj3f3Ty/Hdl0vVfWK\nJH+V5Gez/SjjLyZ5WXf/aGj6DNpj7Xwwyfe7+w9Pe6+1w+Oq6gVJXtDdd1XVs5P8a5I3JfmN2HvY\nx1nWz5tj/2EfVfWs7v5BVW0k+eckv5fk2th7OAd7rJ9fziHsPet+psRrktzX3ae6+5Ekn0py3fCc\nWH+nP63l2iS3LK9vyfY3b0h3/1OS7512eK/1cl2ST3b3I919Ksl92d6jOIb2WDvJmftPYu2wQ3c/\n2N13La8fTvL1bP+Dzd7Dvs6yfhL7D/vo7h8sLy/N9r38vhd7D+doj/WTHMLes+5R4sVJvr3j4/vz\nxMYLu+kkX6yqO6rqncuxy7r7oeX1Q0kum5kaR8Re6+VFefLjiu1H7OY9VfVvVXXzjlNgrR12VVVX\nJHl1ki/H3sNTtGP9/MtyyP7DWVXV06rqrmzvMbd19z2x93CO9lg/ySHsPeseJdb32hLW1Wu7+9VJ\n3pjkXcsp1o/r7euVrCvOyTmsF2uJnT6W5KVJXpXkO0k+cpb3WjvH3HLq/WeSvK+7v7/zc/Ye9rOs\nn7/O9vp5OPYfzkF3/6i7X5XkJUl+sap+6bTP23vY0y7rZzOHtPese5R4IMnlOz6+PE8uLvAk3f2d\n5b//meSz2T5N6KHlGsxU1QuTfHduhhwBe62X0/ejlyzHIEnS3d/tRZI/zROnKVo7PElVPT3bQeIT\n3X3rctjewznZsX7+4rH1Y//hqeju/03yt0muir2Hp2jH+vmZw9p71j1K3JHkyqq6oqouTfKWJCeG\n58SaqqpnVdVzltc/nuQNSe7O9pq5fnnb9Ulu3X0ESLL3ejmR5K1VdWlVvTTJlUluH5gfa2r5x9xj\nfjXb+09i7bBDVVWSm5Oc7O6P7viUvYd97bV+7D/sp6qe/9ip9VX1zCS/kuTO2Hs4B3utn8eC1uLA\ne8/GaqZ9OLr70ap6d5LPZftmGjd78gZncVmSz25/v85Gkr/s7s9X1R1JPl1V70hyKtt3qIZU1SeT\nvC7J86vq20l+P8mHsst66e6TVfXpJCeTPJrkd3qdH1/ESu2ydj6YZLOqXpXt0xO/leS3EmuHM7w2\nyduTfLWq7lyO3Rh7D+dmt/XzgSRvs/+wjxcmuaWqnpbtH0x/oru/tKwjew/72Wv9fPww9p61fiQo\nAAAAcPFa98s3AAAAgIuUKAEAAACMECUAAACAEaIEAAAAMEKUAAAAAEaIEgAAAMAIUQIAAAAY8f8A\nJiE52tnO0wAAAABJRU5ErkJggg==\n",
"text": [
"<matplotlib.figure.Figure at 0x7fe8e77f3898>"
]
}
],
"prompt_number": 31
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So, basically a bell curve with a long right tail.\n",
"\n",
"Okay, that's enough for tonight. In the interest of being complete, though, here are all the words that sum to 100:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for w in words_by_sum[100]:\n",
" print(w)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"abatements\n",
"abettors\n",
"abrogative\n",
"absconders\n",
"acclimation\n",
"accounter\n",
"accumulate\n",
"acknowledge\n",
"acolytes\n",
"acquitted\n",
"acromegaly\n",
"activates\n",
"addressing\n",
"adiabatically\n",
"adulthood\n",
"advantaging\n",
"adverting\n",
"aerofoils\n",
"aerometer\n",
"affectation\n",
"afghanistan\n",
"aggresses\n",
"agrology\n",
"airdrops\n",
"alertest\n",
"alienation\n",
"alkalinize\n",
"allottable\n",
"alpinist\n",
"alternated\n",
"ambulating\n",
"amiableness\n",
"amortise\n",
"amphiboles\n",
"amputees\n",
"amusedly\n",
"analysis\n",
"anchoritic\n",
"aneurism\n",
"anginous\n",
"anglophobia\n",
"animaters\n",
"annually\n",
"answerable\n",
"anterior\n",
"anvilling\n",
"aphrodisia\n",
"apoplectic\n",
"apostacy\n",
"appeasers\n",
"appertain\n",
"applying\n",
"appointed\n",
"apropos\n",
"aquamarine\n",
"arbitrages\n",
"archdiocesan\n",
"archenemies\n",
"arrests\n",
"arrivals\n",
"arrowy\n",
"asbestos\n",
"assafoetida\n",
"atonally\n",
"attitude\n",
"attunes\n",
"auctorial\n",
"audiophile\n",
"augments\n",
"autoclave\n",
"automated\n",
"avocation\n",
"avouching\n",
"awfully\n",
"azurite\n",
"backswept\n",
"backtracking\n",
"backwardly\n",
"baguettes\n",
"balletomane\n",
"bandwagons\n",
"barkeepers\n",
"barytone\n",
"baulkiest\n",
"bedazzles\n",
"bedposts\n",
"beetroot\n",
"beginnings\n",
"benediction\n",
"bergamots\n",
"besmircher\n",
"bespangles\n",
"bespreading\n",
"bestirred\n",
"bestridden\n",
"bettering\n",
"bevellers\n",
"bewitching\n",
"biathlons\n",
"bioassayed\n",
"bipartite\n",
"birthmark\n",
"biweeklies\n",
"blasphemes\n",
"blastoffs\n",
"blazoning\n",
"blighters\n",
"blissful\n",
"blowtube\n",
"bluegums\n",
"bolstered\n",
"bonhomies\n",
"bonneting\n",
"boohooing\n",
"boondoggled\n",
"bootblacks\n",
"bootery\n",
"boozers\n",
"borrowed\n",
"boskiest\n",
"botanist\n",
"bouillon\n",
"boulevard\n",
"boundary\n",
"bowerlike\n",
"bowknot\n",
"boycott\n",
"brachiation\n",
"bractlets\n",
"breviary\n",
"brezhnev\n",
"bronchus\n",
"bronzy\n",
"browser\n",
"bruiting\n",
"brushier\n",
"bulgurs\n",
"bullnose\n",
"burnished\n",
"byplays\n",
"cacophony\n",
"calvities\n",
"camphorate\n",
"candidature\n",
"cannibalized\n",
"cantrips\n",
"captaincies\n",
"carboxyl\n",
"cardiograph\n",
"carotenes\n",
"carouser\n",
"carpenter\n",
"carroty\n",
"caryatids\n",
"catechisms\n",
"causeries\n",
"cavitates\n",
"censurable\n",
"centipedes\n",
"centupled\n",
"ceramicist\n",
"chaplaincies\n",
"charwomen\n",
"chastening\n",
"chattery\n",
"chemurgy\n",
"cherishing\n",
"chimpanzee\n",
"chippewas\n",
"chirpily\n",
"choiceness\n",
"chondrule\n",
"choppers\n",
"chortles\n",
"chromium\n",
"chucklers\n",
"chutist\n",
"clangoring\n",
"clangoured\n",
"clarifiers\n",
"classily\n",
"cleanliest\n",
"clerkdoms\n",
"clinically\n",
"clockwise\n",
"clotting\n",
"clumsier\n",
"coarsest\n",
"coasters\n",
"coatroom\n",
"coattails\n",
"coauthered\n",
"colleagues\n",
"collecting\n",
"colonials\n",
"cometary\n",
"commandeered\n",
"commercing\n",
"companion\n",
"comport\n",
"condensate\n",
"confabulate\n",
"confederated\n",
"congeners\n",
"congenital\n",
"congress\n",
"conjoint\n",
"conjugated\n",
"conjunct\n",
"connivance\n",
"conniver\n",
"consigns\n",
"contented\n",
"cooingly\n",
"cookeries\n",
"cookout\n",
"coonskin\n",
"coplots\n",
"coquets\n",
"corkiest\n",
"cornmeals\n",
"corridor\n",
"coryzal\n",
"cossets\n",
"costumed\n",
"cotillon\n",
"cotters\n",
"coulombs\n",
"courses\n",
"courter\n",
"cousins\n",
"coverlet\n",
"coverup\n",
"coyness\n",
"crankiest\n",
"cravenly\n",
"credentialed\n",
"creepiest\n",
"creosote\n",
"crimsoned\n",
"crudity\n",
"cruising\n",
"crummier\n",
"crusados\n",
"crusts\n",
"culture\n",
"culvers\n",
"cumulated\n",
"curdlers\n",
"curettage\n",
"curlily\n",
"cutdown\n",
"cutesier\n",
"cutlases\n",
"cutlets\n",
"cutout\n",
"cuttles\n",
"cutups\n",
"danewort\n",
"debarkation\n",
"debaucheries\n",
"decalcomanias\n",
"declarative\n",
"declension\n",
"decorous\n",
"decrypted\n",
"deescalating\n",
"defections\n",
"defeminized\n",
"deflators\n",
"degausses\n",
"deliberates\n",
"delineating\n",
"deliquesce\n",
"delivery\n",
"delouses\n",
"demobilize\n",
"demodulate\n",
"dempster\n",
"denominate\n",
"denounces\n",
"depletion\n",
"deploring\n",
"derivers\n",
"derogating\n",
"descriers\n",
"desegregated\n",
"desiccative\n",
"designers\n",
"desolates\n",
"despatches\n",
"deterring\n",
"dewberry\n",
"diagonally\n",
"dialyzer\n",
"digestive\n",
"dilatants\n",
"dilatator\n",
"dinginess\n",
"diphtheric\n",
"disarranged\n",
"discernible\n",
"discipline\n",
"disclaiming\n",
"discommode\n",
"discredited\n",
"disjoint\n",
"disjunct\n",
"dislodging\n",
"dispraise\n",
"dissuader\n",
"distancing\n",
"distrait\n",
"divinely\n",
"diviners\n",
"divorcees\n",
"dockyards\n",
"dominates\n",
"dooryard\n",
"doubleheader\n",
"doughty\n",
"draftsmen\n",
"drawlers\n",
"driveling\n",
"drizzle\n",
"droopier\n",
"droshky\n",
"drossy\n",
"dryrot\n",
"dualities\n",
"ducklings\n",
"ducktails\n",
"duetting\n",
"dumpily\n",
"duologue\n",
"durative\n",
"dyslectic\n",
"earwigging\n",
"ebullient\n",
"ecstasies\n",
"egoistical\n",
"ejections\n",
"electives\n",
"electorial\n",
"elephants\n",
"elsewhere\n",
"emasculate\n",
"embodiment\n",
"emboldening\n",
"embowers\n",
"emendation\n",
"empathetic\n",
"emptily\n",
"encapsuled\n",
"enclasping\n",
"encrust\n",
"encumbers\n",
"enlivens\n",
"ensorceled\n",
"ensurer\n",
"entrains\n",
"envoys\n",
"eponymic\n",
"equalized\n",
"equipages\n",
"erasions\n",
"espouse\n",
"estopped\n",
"etherized\n",
"ethylated\n",
"eugenist\n",
"eulogize\n",
"eunuchoid\n",
"euphenics\n",
"eventual\n",
"everting\n",
"evolves\n",
"excavates\n",
"excellent\n",
"excerpted\n",
"excoriate\n",
"execrates\n",
"exhibiter\n",
"exigencies\n",
"explains\n",
"explodes\n",
"exserted\n",
"extendible\n",
"extracted\n",
"fairyism\n",
"falseness\n",
"falsities\n",
"fantasts\n",
"farriery\n",
"farrows\n",
"fatalisms\n",
"fatalistic\n",
"fatherhood\n",
"fattiest\n",
"feldspars\n",
"felinity\n",
"ferments\n",
"ferrites\n",
"ferrums\n",
"ferryman\n",
"filtering\n",
"finitely\n",
"firebombing\n",
"firebricks\n",
"fishnets\n",
"fissioned\n",
"fivepins\n",
"flaccidities\n",
"flagellates\n",
"fleawort\n",
"flockiest\n",
"floosies\n",
"fluorine\n",
"flurry\n",
"fondlings\n",
"footpaces\n",
"forebearing\n",
"foredoomed\n",
"forefoot\n",
"foresides\n",
"forewarn\n",
"forgiver\n",
"forsaking\n",
"fountain\n",
"fraughts\n",
"freshest\n",
"freshets\n",
"friendlier\n",
"frisson\n",
"frogeyes\n",
"fuehrers\n",
"fumeless\n",
"furcular\n",
"furless\n",
"furuncle\n",
"garnishes\n",
"gauntlet\n",
"gauntly\n",
"gemsbucks\n",
"generating\n",
"geographer\n",
"germanely\n",
"gladiolus\n",
"glimpses\n",
"glissando\n",
"glittered\n",
"glorifies\n",
"glowfly\n",
"glutamate\n",
"glycogenic\n",
"gobbledegook\n",
"godparent\n",
"goldbricks\n",
"golliwog\n",
"gooneys\n",
"governs\n",
"grandaunt\n",
"grappling\n",
"graybeards\n",
"greatening\n",
"greenflies\n",
"grenadiers\n",
"grillers\n",
"grimiest\n",
"grindery\n",
"groggily\n",
"groover\n",
"grouper\n",
"grouts\n",
"grovelled\n",
"growly\n",
"grumpy\n",
"guarantied\n",
"gullibly\n",
"gusseted\n",
"guttered\n",
"guttier\n",
"gypsies\n",
"halftones\n",
"hammerers\n",
"haranguing\n",
"harmonics\n",
"harrying\n",
"headhunts\n",
"healthily\n",
"heelpost\n",
"hegemonies\n",
"hematites\n",
"hemoglobin\n",
"heritably\n",
"hexarchies\n",
"highways\n",
"hinderers\n",
"hiroshima\n",
"hirsute\n",
"hitchhikes\n",
"hobbyist\n",
"hoboisms\n",
"hollandaise\n",
"hollering\n",
"holograph\n",
"honduras\n",
"honeycomb\n",
"honoring\n",
"honoured\n",
"hoofbound\n",
"hooligans\n",
"hooters\n",
"hospital\n",
"hotblooded\n",
"hotness\n",
"housemen\n",
"howlers\n",
"humblest\n",
"hungrier\n",
"hurrayed\n",
"hussies\n",
"hutzpah\n",
"hydrates\n",
"hypoxic\n",
"hyraxes\n",
"hysons\n",
"identifies\n",
"ideologies\n",
"idolisms\n",
"ignifying\n",
"imbroglio\n",
"immature\n",
"immitigable\n",
"impaction\n",
"impaneling\n",
"imparter\n",
"impellor\n",
"imported\n",
"impotence\n",
"imprest\n",
"impugnable\n",
"inadequacy\n",
"inanities\n",
"inapplicable\n",
"incubating\n",
"inductees\n",
"inefficient\n",
"infernos\n",
"inferring\n",
"inflation\n",
"infringer\n",
"ingroup\n",
"ingrown\n",
"inkiness\n",
"innately\n",
"innovate\n",
"inoculate\n",
"insecticide\n",
"inshrined\n",
"intellect\n",
"interbreed\n",
"interfaces\n",
"interfere\n",
"intrenched\n",
"ioniums\n",
"irritate\n",
"isolates\n",
"jailhouse\n",
"jillions\n",
"jimmying\n",
"jostles\n",
"judiciary\n",
"jumblers\n",
"jumbucks\n",
"junkets\n",
"jurassic\n",
"justing\n",
"keyboards\n",
"keyholes\n",
"kibitzer\n",
"kissers\n",
"knappers\n",
"knockoffs\n",
"knothole\n",
"knouts\n",
"knowledged\n",
"kohlrabies\n",
"lacquerer\n",
"lagniappes\n",
"lambskins\n",
"laminating\n",
"landholding\n",
"landscaping\n",
"languished\n",
"largeness\n",
"latinized\n",
"lavenders\n",
"lazulis\n",
"lazyish\n",
"leaderless\n",
"leaseholds\n",
"legumins\n",
"leveraging\n",
"liberalism\n",
"liberator\n",
"ligaments\n",
"lightest\n",
"lightning\n",
"likelihood\n",
"liminess\n",
"limpidly\n",
"lodicules\n",
"loginess\n",
"logrolled\n",
"longship\n",
"loopers\n",
"lowlands\n",
"lubricant\n",
"luckiest\n",
"lumpens\n",
"lunchers\n",
"luniest\n",
"lunkers\n",
"machismos\n",
"macrocosm\n",
"magistral\n",
"magnetize\n",
"mailboxes\n",
"maintains\n",
"mamelukes\n",
"mantises\n",
"marauders\n",
"margarins\n",
"marinates\n",
"marshalcy\n",
"martinet\n",
"martingale\n",
"masochism\n",
"mastoids\n",
"matchless\n",
"matchmaking\n",
"matrons\n",
"mattedly\n",
"maximize\n",
"mealworm\n",
"measurer\n",
"meetness\n",
"mercantile\n",
"mercurial\n",
"merganser\n",
"merrily\n",
"mezuzah\n",
"microbus\n",
"midpoint\n",
"milwaukee\n",
"mimickers\n",
"minuses\n",
"minuter\n",
"mirrored\n",
"misbiassed\n",
"miscopy\n",
"misdirect\n",
"miseducate\n",
"mismanager\n",
"missus\n",
"mitoses\n",
"mittens\n",
"moderates\n",
"molecular\n",
"mollifies\n",
"mongolian\n",
"montaging\n",
"moodiest\n",
"moralism\n",
"morphemic\n",
"motors\n",
"moults\n",
"mourns\n",
"mousier\n",
"moussaka\n",
"mouther\n",
"mufflers\n",
"mullers\n",
"mummify\n",
"murkly\n",
"mutagens\n",
"mutedly\n",
"mythos\n",
"nastily\n",
"negotiated\n",
"neoclassic\n",
"nesters\n",
"nestling\n",
"neuronal\n",
"nextly\n",
"nighters\n",
"nihilist\n",
"ninepins\n",
"nonbreakable\n",
"noncasual\n",
"noncausal\n",
"nondairy\n",
"nonhuman\n",
"nosebleeds\n",
"nostalgic\n",
"notating\n",
"notional\n",
"novellas\n",
"nucleates\n",
"nutty\n",
"obliques\n",
"obscenely\n",
"obtuser\n",
"oceanarium\n",
"offhandedly\n",
"oilheating\n",
"omittance\n",
"omniarchs\n",
"opaquing\n",
"operetta\n",
"orality\n",
"ordures\n",
"orients\n",
"ornament\n",
"oscillated\n",
"osculated\n",
"ossifier\n",
"osteitic\n",
"outflank\n",
"outlier\n",
"outlined\n",
"outpaces\n",
"outrank\n",
"outreached\n",
"outset\n",
"ovately\n",
"overboard\n",
"overbore\n",
"ovulated\n",
"oxcarts\n",
"oxtails\n",
"pakistani\n",
"palpitate\n",
"panderers\n",
"panhandling\n",
"papists\n",
"paramecium\n",
"parleyer\n",
"pasteur\n",
"pastiches\n",
"pasture\n",
"pathless\n",
"pedagogues\n",
"pederastic\n",
"pedicures\n",
"pelleting\n",
"penchants\n",
"penlites\n",
"percents\n",
"performed\n",
"perilune\n",
"permits\n",
"peroxided\n",
"personage\n",
"personal\n",
"perturb\n",
"pesthole\n",
"phagocyte\n",
"phalanxes\n",
"pharisees\n",
"phlebitis\n",
"photogs\n",
"photonic\n",
"physicked\n",
"picarooned\n",
"piggybacks\n",
"pilaster\n",
"pilloried\n",
"pinecones\n",
"pistachio\n",
"pitying\n",
"plaiters\n",
"plastered\n",
"plateaux\n",
"playgirl\n",
"playoffs\n",
"plebiscite\n",
"plenties\n",
"plenums\n",
"plummet\n",
"plummy\n",
"plunging\n",
"plushes\n",
"pocketing\n",
"poetized\n",
"ponying\n",
"poorish\n",
"portland\n",
"postdate\n",
"posting\n",
"postpaid\n",
"potbellied\n",
"pothook\n",
"potpies\n",
"pounding\n",
"pouring\n",
"powders\n",
"practicing\n",
"preachings\n",
"preadapts\n",
"precambrian\n",
"precising\n",
"predawns\n",
"predeceases\n",
"predicates\n",
"preeners\n",
"preformed\n",
"preludes\n",
"preordain\n",
"prepacking\n",
"prepays\n",
"presley\n",
"presser\n",
"prevent\n",
"primary\n",
"printer\n",
"prisoned\n",
"problems\n",
"procured\n",
"producer\n",
"profaning\n",
"profiles\n",
"profuse\n",
"progeny\n",
"promisee\n",
"pronging\n",
"proofing\n",
"propjet\n",
"proscenia\n",
"prosier\n",
"ptomainic\n",
"publicly\n",
"pumpkin\n",
"pursue\n",
"pussy\n",
"putter\n",
"pyritic\n",
"pyrogen\n",
"quadrangle\n",
"qualmish\n",
"quarry\n",
"quarter\n",
"quicklime\n",
"quietened\n",
"quintar\n",
"quints\n",
"radarscope\n",
"radiocarbon\n",
"raillery\n",
"raincoats\n",
"ransomable\n",
"rasters\n",
"rattails\n",
"ravelers\n",
"ravelling\n",
"ravisher\n",
"reaccusing\n",
"reapplier\n",
"rearguing\n",
"reattaches\n",
"receptor\n",
"reciprocal\n",
"recompiled\n",
"recreating\n",
"redeploy\n",
"redesigns\n",
"redounds\n",
"redrying\n",
"reenclosed\n",
"reexhibit\n",
"referring\n",
"refinancing\n",
"refinery\n",
"refuting\n",
"regalement\n",
"regimented\n",
"regionals\n",
"regressed\n",
"regroup\n",
"regrown\n",
"reimpose\n",
"reissued\n",
"remedying\n",
"remigrated\n",
"renovate\n",
"repaginated\n",
"repress\n",
"reprint\n",
"reprobate\n",
"repulsed\n",
"reputable\n",
"reradiates\n",
"reschedule\n",
"researcher\n",
"resents\n",
"resewing\n",
"reshipped\n",
"reshuffle\n",
"residues\n",
"resolved\n",
"responded\n",
"restaging\n",
"restocked\n",
"restore\n",
"resumes\n",
"resurfaced\n",
"retaught\n",
"retiring\n",
"retrenched\n",
"retroact\n",
"reversal\n",
"revives\n",
"rewound\n",
"rewraps\n",
"ricochets\n",
"ridicules\n",
"ringnecks\n",
"riptides\n",
"rituals\n",
"riverbank\n",
"riverine\n",
"roadblocks\n",
"roadster\n",
"rockiest\n",
"roomful\n",
"roommate\n",
"rootier\n",
"rosery\n",
"rosiny\n",
"ruddiest\n",
"rufous\n",
"rulings\n",
"sagebrush\n",
"saintly\n",
"salacious\n",
"sapiencies\n",
"satiating\n",
"satrapy\n",
"savory\n",
"scannings\n",
"schematics\n",
"scholium\n",
"scoreboard\n",
"scorepads\n",
"scotchmen\n",
"scrapbook\n",
"screwier\n",
"sculpted\n",
"scuttle\n",
"seafowls\n",
"seamster\n",
"seashells\n",
"seatless\n",
"secreting\n",
"seignorage\n",
"selective\n",
"semaphore\n",
"semitone\n",
"sennits\n",
"sensoria\n",
"septicemia\n",
"services\n",
"session\n",
"setout\n",
"settles\n",
"setups\n",
"shadowing\n",
"shakedown\n",
"shakeout\n",
"shakeups\n",
"sharpens\n",
"shattered\n",
"sheeneys\n",
"shibboleth\n",
"shipyard\n",
"shivers\n",
"shoofly\n",
"shooter\n",
"shopboy\n",
"shortcake\n",
"shovels\n",
"shredders\n",
"shrewder\n",
"shrieking\n",
"shrives\n",
"sicklily\n",
"sightly\n",
"signiori\n",
"silicons\n",
"simulate\n",
"sinewing\n",
"siphons\n",
"skatings\n",
"skewers\n",
"skiddiest\n",
"skimpier\n",
"skirter\n",
"slaverer\n",
"sleepyhead\n",
"slenderer\n",
"slithered\n",
"slumps\n",
"slyest\n",
"smirching\n",
"smirking\n",
"smitten\n",
"smokers\n",
"sneerful\n",
"sniffily\n",
"snipers\n",
"snivels\n",
"snobbery\n",
"snubbers\n",
"socialism\n",
"socrates\n",
"sodiums\n",
"sodomite\n",
"soother\n",
"soughing\n",
"sourball\n",
"sources\n",
"soybeans\n",
"spacewalked\n",
"sparkler\n",
"spavins\n",
"specificated\n",
"spenders\n",
"spiciest\n",
"spirited\n",
"splashy\n",
"splining\n",
"spondaics\n",
"spooler\n",
"spouted\n",
"sprucer\n",
"spunks\n",
"squares\n",
"squaws\n",
"squinched\n",
"squint\n",
"staggerer\n",
"stagiest\n",
"stalemated\n",
"standards\n",
"standers\n",
"stanzas\n",
"starers\n",
"starfish\n",
"starling\n",
"status\n",
"steadiers\n",
"steamers\n",
"stemming\n",
"steppes\n",
"stockier\n",
"stockmen\n",
"stonier\n",
"stooges\n",
"stools\n",
"stoves\n",
"strains\n",
"strangled\n",
"straws\n",
"stress\n",
"striding\n",
"striker\n",
"stubbles\n",
"stuccos\n",
"stupes\n",
"styles\n",
"subcranial\n",
"sublethal\n",
"sublimes\n",
"subsume\n",
"succour\n",
"sucrose\n",
"suffocated\n",
"sunders\n",
"sunnier\n",
"sunward\n",
"superceded\n",
"surcharge\n",
"surely\n",
"suttas\n",
"suzanne\n",
"swankier\n",
"swashing\n",
"sweatier\n",
"sweepier\n",
"sweetened\n",
"sweptback\n",
"swifter\n",
"swimmer\n",
"swirls\n",
"swollen\n",
"syndicate\n",
"syrens\n",
"tabernacles\n",
"taborets\n",
"tailcoats\n",
"tailgating\n",
"tailspin\n",
"tallying\n",
"tangents\n",
"tanzanian\n",
"tattooed\n",
"taurus\n",
"tautens\n",
"taxless\n",
"taxying\n",
"teardown\n",
"teethers\n",
"telegrams\n",
"telephone\n",
"telescope\n",
"telluric\n",
"temperance\n",
"temperer\n",
"temporal\n",
"tensely\n",
"tetanus\n",
"tetragon\n",
"tetrahedra\n",
"tetryl\n",
"thalidomide\n",
"theists\n",
"therefore\n",
"thickening\n",
"thievish\n",
"thirty\n",
"thorny\n",
"threatened\n",
"thrifts\n",
"thriver\n",
"thumbnail\n",
"tidemarks\n",
"tiderips\n",
"tinkerer\n",
"tinselled\n",
"tipless\n",
"tiredest\n",
"toasty\n",
"toboggans\n",
"toilets\n",
"tolerated\n",
"tooting\n",
"toroids\n",
"torqued\n",
"towards\n",
"towers\n",
"traction\n",
"tramells\n",
"transect\n",
"transom\n",
"travelog\n",
"trembling\n",
"triplet\n",
"triply\n",
"troller\n",
"tropics\n",
"troppo\n",
"troths\n",
"trounced\n",
"trudging\n",
"truism\n",
"tsarevna\n",
"tsunamic\n",
"tubules\n",
"tularemia\n",
"tummies\n",
"tumoral\n",
"tuneably\n",
"tuppence\n",
"turkey\n",
"turnoff\n",
"turtled\n",
"tussled\n",
"twangler\n",
"twisted\n",
"typefaces\n",
"unaltered\n",
"unavailable\n",
"unbeholden\n",
"unbeloved\n",
"unbounded\n",
"unbridgeable\n",
"unbroken\n",
"unchaining\n",
"uncombined\n",
"underdone\n",
"undergird\n",
"underlay\n",
"undress\n",
"unequaled\n",
"unfasten\n",
"unfreeze\n",
"unhorse\n",
"unironed\n",
"unitive\n",
"unkempt\n",
"unlighted\n",
"unlinks\n",
"unmanly\n",
"unmodified\n",
"unmown\n",
"unprimed\n",
"unrelated\n",
"unrisen\n",
"unrobing\n",
"unshelled\n",
"unthreaded\n",
"untidier\n",
"unwarned\n",
"unwilled\n",
"unwove\n",
"upsets\n",
"urbanest\n",
"urbanized\n",
"urologic\n",
"urticaria\n",
"useless\n",
"utensil\n",
"uxorial\n",
"vacuolate\n",
"vacuums\n",
"variety\n",
"varnished\n",
"vehemency\n",
"venation\n",
"venially\n",
"verbalize\n",
"verdancies\n",
"verdicts\n",
"vibists\n",
"vinous\n",
"violins\n",
"vivifier\n",
"volleyed\n",
"vortical\n",
"vouchsafe\n",
"voyaging\n",
"vulgars\n",
"wanters\n",
"warpers\n",
"washdays\n",
"washings\n",
"watchdogs\n",
"watergate\n",
"wattles\n",
"weariest\n",
"wednesday\n",
"weeniest\n",
"whenever\n",
"whinnier\n",
"whirling\n",
"whiskey\n",
"whisking\n",
"whistled\n",
"wholely\n",
"wholesale\n",
"whooper\n",
"whorish\n",
"whumps\n",
"wigglers\n",
"willets\n",
"windfalls\n",
"wirehaired\n",
"wizards\n",
"woeness\n",
"woodblock\n",
"wrathing\n",
"wreakers\n",
"wreathy\n",
"wriggles\n",
"writing\n",
"wronger\n",
"xylose\n",
"yappers\n",
"yardbirds\n",
"yarrow\n",
"yeasting\n",
"yelpers\n",
"zesting\n",
"zincifies\n",
"zinkify\n",
"zithern\n"
]
}
],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment