Created
February 7, 2013 07:04
-
-
Save rahuldave/4729094 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"metadata": { | |
"name": "Homework1" | |
}, | |
"nbformat": 3, | |
"nbformat_minor": 0, | |
"worksheets": [ | |
{ | |
"cells": [ | |
{ | |
"cell_type": "heading", | |
"level": 3, | |
"metadata": {}, | |
"source": [ | |
"Homework" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"_1. Use the text of Hamlet and compute a word frequency graph like the ones we have calculated. By reading the NLTK documentation, see if you can clean up as many glitches as possible. This will require you to either read the sections in the NLTK book on regular expressions, or find the right NLTK expressions to do it for you. The former is preferred." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"_2. This homework is about Dynamic Programming. The following text is taken directly from chapter 4 of the nltk book.\n", | |
"\n", | |
"Dynamic programming is a general technique for designing algorithms which is widely used in natural language processing. The term 'programming' is used in a different sense to what you might expect, to mean planning or scheduling. Dynamic programming is used when a problem contains overlapping sub-problems. Instead of computing solutions to these sub-problems repeatedly, we simply store them in a lookup table.\n", | |
"\n", | |
"Pingala was an Indian author who lived around the 5th century B.C., and wrote a treatise on Sanskrit prosody called the Chandas Shastra. Virahanka extended this work around the 6th century A.D., studying the number of ways of combining short and long syllables to create a meter of length n. Short syllables, marked $S$, take up one unit of length, while long syllables, marked $L$, take two. Pingala found, for example, that there are five ways to construct a meter of length 4: \n", | |
"\n", | |
"$V_4 = {LL, SSL, SLS, LSS, SSSS}$. \n", | |
"\n", | |
"Observe that we can split $V_4$ into two subsets, those starting with L and those starting with S, as shown:\n", | |
"\n", | |
"\n", | |
"$V_4$ =\n", | |
" \n", | |
"* $LL, LSS$ \n", | |
" > i.e. $L$ prefixed to each item of $V_2 = {L, SS}$ \n", | |
"\n", | |
"* $SSL, SLS, SSSS$ \n", | |
" > i.e. S prefixed to each item of $V_3 = {SL, LS, SSS}$ \n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"def virahanka1(n):\n", | |
" if n == 0:\n", | |
" return [\"\"]\n", | |
" elif n == 1:\n", | |
" return [\"S\"]\n", | |
" else:\n", | |
" s = [\"S\" + prosody for prosody in virahanka1(n-1)]\n", | |
" l = [\"L\" + prosody for prosody in virahanka1(n-2)]\n", | |
" return s + l" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 1 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"def virahanka2(n):\n", | |
" lookup = [[\"\"], [\"S\"]]\n", | |
" for i in range(n-1):\n", | |
" s = [\"S\" + prosody for prosody in lookup[i+1]]\n", | |
" l = [\"L\" + prosody for prosody in lookup[i]]\n", | |
" lookup.append(s + l)\n", | |
" return lookup[n]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 2 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"def virahanka3(n, lookup={0:[\"\"], 1:[\"S\"]}):\n", | |
" if n not in lookup:\n", | |
" s = [\"S\" + prosody for prosody in virahanka3(n-1)]\n", | |
" l = [\"L\" + prosody for prosody in virahanka3(n-2)]\n", | |
" lookup[n] = s + l\n", | |
" return lookup[n]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 3 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"for n in range(15):\n", | |
" print virahanka1(n)" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"stream": "stdout", | |
"text": [ | |
"['']\n", | |
"['S']\n", | |
"['SS', 'L']\n", | |
"['SSS', 'SL', 'LS']\n", | |
"['SSSS', 'SSL', 'SLS', 'LSS', 'LL']\n", | |
"['SSSSS', 'SSSL', 'SSLS', 'SLSS', 'SLL', 'LSSS', 'LSL', 'LLS']\n", | |
"['SSSSSS', 'SSSSL', 'SSSLS', 'SSLSS', 'SSLL', 'SLSSS', 'SLSL', 'SLLS', 'LSSSS', 'LSSL', 'LSLS', 'LLSS', 'LLL']\n", | |
"['SSSSSSS', 'SSSSSL', 'SSSSLS', 'SSSLSS', 'SSSLL', 'SSLSSS', 'SSLSL', 'SSLLS', 'SLSSSS', 'SLSSL', 'SLSLS', 'SLLSS', 'SLLL', 'LSSSSS', 'LSSSL', 'LSSLS', 'LSLSS', 'LSLL', 'LLSSS', 'LLSL', 'LLLS']\n", | |
"['SSSSSSSS', 'SSSSSSL', 'SSSSSLS', 'SSSSLSS', 'SSSSLL', 'SSSLSSS', 'SSSLSL', 'SSSLLS', 'SSLSSSS', 'SSLSSL', 'SSLSLS', 'SSLLSS', 'SSLLL', 'SLSSSSS', 'SLSSSL', 'SLSSLS', 'SLSLSS', 'SLSLL', 'SLLSSS', 'SLLSL', 'SLLLS', 'LSSSSSS', 'LSSSSL', 'LSSSLS', 'LSSLSS', 'LSSLL', 'LSLSSS', 'LSLSL', 'LSLLS', 'LLSSSS', 'LLSSL', 'LLSLS', 'LLLSS', 'LLLL']\n", | |
"['SSSSSSSSS', 'SSSSSSSL', 'SSSSSSLS', 'SSSSSLSS', 'SSSSSLL', 'SSSSLSSS', 'SSSSLSL', 'SSSSLLS', 'SSSLSSSS', 'SSSLSSL', 'SSSLSLS', 'SSSLLSS', 'SSSLLL', 'SSLSSSSS', 'SSLSSSL', 'SSLSSLS', 'SSLSLSS', 'SSLSLL', 'SSLLSSS', 'SSLLSL', 'SSLLLS', 'SLSSSSSS', 'SLSSSSL', 'SLSSSLS', 'SLSSLSS', 'SLSSLL', 'SLSLSSS', 'SLSLSL', 'SLSLLS', 'SLLSSSS', 'SLLSSL', 'SLLSLS', 'SLLLSS', 'SLLLL', 'LSSSSSSS', 'LSSSSSL', 'LSSSSLS', 'LSSSLSS', 'LSSSLL', 'LSSLSSS', 'LSSLSL', 'LSSLLS', 'LSLSSSS', 'LSLSSL', 'LSLSLS', 'LSLLSS', 'LSLLL', 'LLSSSSS', 'LLSSSL', 'LLSSLS', 'LLSLSS', 'LLSLL', 'LLLSSS', 'LLLSL', 'LLLLS']\n", | |
"['SSSSSSSSSS', 'SSSSSSSSL', 'SSSSSSSLS', 'SSSSSSLSS', 'SSSSSSLL', 'SSSSSLSSS', 'SSSSSLSL', 'SSSSSLLS', 'SSSSLSSSS', 'SSSSLSSL', 'SSSSLSLS', 'SSSSLLSS', 'SSSSLLL', 'SSSLSSSSS', 'SSSLSSSL', 'SSSLSSLS', 'SSSLSLSS', 'SSSLSLL', 'SSSLLSSS', 'SSSLLSL', 'SSSLLLS', 'SSLSSSSSS', 'SSLSSSSL', 'SSLSSSLS', 'SSLSSLSS', 'SSLSSLL', 'SSLSLSSS', 'SSLSLSL', 'SSLSLLS', 'SSLLSSSS', 'SSLLSSL', 'SSLLSLS', 'SSLLLSS', 'SSLLLL', 'SLSSSSSSS', 'SLSSSSSL', 'SLSSSSLS', 'SLSSSLSS', 'SLSSSLL', 'SLSSLSSS', 'SLSSLSL', 'SLSSLLS', 'SLSLSSSS', 'SLSLSSL', 'SLSLSLS', 'SLSLLSS', 'SLSLLL', 'SLLSSSSS', 'SLLSSSL', 'SLLSSLS', 'SLLSLSS', 'SLLSLL', 'SLLLSSS', 'SLLLSL', 'SLLLLS', 'LSSSSSSSS', 'LSSSSSSL', 'LSSSSSLS', 'LSSSSLSS', 'LSSSSLL', 'LSSSLSSS', 'LSSSLSL', 'LSSSLLS', 'LSSLSSSS', 'LSSLSSL', 'LSSLSLS', 'LSSLLSS', 'LSSLLL', 'LSLSSSSS', 'LSLSSSL', 'LSLSSLS', 'LSLSLSS', 'LSLSLL', 'LSLLSSS', 'LSLLSL', 'LSLLLS', 'LLSSSSSS', 'LLSSSSL', 'LLSSSLS', 'LLSSLSS', 'LLSSLL', 'LLSLSSS', 'LLSLSL', 'LLSLLS', 'LLLSSSS', 'LLLSSL', 'LLLSLS', 'LLLLSS', 'LLLLL']\n", | |
"['SSSSSSSSSSS', 'SSSSSSSSSL', 'SSSSSSSSLS', 'SSSSSSSLSS', 'SSSSSSSLL', 'SSSSSSLSSS', 'SSSSSSLSL', 'SSSSSSLLS', 'SSSSSLSSSS', 'SSSSSLSSL', 'SSSSSLSLS', 'SSSSSLLSS', 'SSSSSLLL', 'SSSSLSSSSS', 'SSSSLSSSL', 'SSSSLSSLS', 'SSSSLSLSS', 'SSSSLSLL', 'SSSSLLSSS', 'SSSSLLSL', 'SSSSLLLS', 'SSSLSSSSSS', 'SSSLSSSSL', 'SSSLSSSLS', 'SSSLSSLSS', 'SSSLSSLL', 'SSSLSLSSS', 'SSSLSLSL', 'SSSLSLLS', 'SSSLLSSSS', 'SSSLLSSL', 'SSSLLSLS', 'SSSLLLSS', 'SSSLLLL', 'SSLSSSSSSS', 'SSLSSSSSL', 'SSLSSSSLS', 'SSLSSSLSS', 'SSLSSSLL', 'SSLSSLSSS', 'SSLSSLSL', 'SSLSSLLS', 'SSLSLSSSS', 'SSLSLSSL', 'SSLSLSLS', 'SSLSLLSS', 'SSLSLLL', 'SSLLSSSSS', 'SSLLSSSL', 'SSLLSSLS', 'SSLLSLSS', 'SSLLSLL', 'SSLLLSSS', 'SSLLLSL', 'SSLLLLS', 'SLSSSSSSSS', 'SLSSSSSSL', 'SLSSSSSLS', 'SLSSSSLSS', 'SLSSSSLL', 'SLSSSLSSS', 'SLSSSLSL', 'SLSSSLLS', 'SLSSLSSSS', 'SLSSLSSL', 'SLSSLSLS', 'SLSSLLSS', 'SLSSLLL', 'SLSLSSSSS', 'SLSLSSSL', 'SLSLSSLS', 'SLSLSLSS', 'SLSLSLL', 'SLSLLSSS', 'SLSLLSL', 'SLSLLLS', 'SLLSSSSSS', 'SLLSSSSL', 'SLLSSSLS', 'SLLSSLSS', 'SLLSSLL', 'SLLSLSSS', 'SLLSLSL', 'SLLSLLS', 'SLLLSSSS', 'SLLLSSL', 'SLLLSLS', 'SLLLLSS', 'SLLLLL', 'LSSSSSSSSS', 'LSSSSSSSL', 'LSSSSSSLS', 'LSSSSSLSS', 'LSSSSSLL', 'LSSSSLSSS', 'LSSSSLSL', 'LSSSSLLS', 'LSSSLSSSS', 'LSSSLSSL', 'LSSSLSLS', 'LSSSLLSS', 'LSSSLLL', 'LSSLSSSSS', 'LSSLSSSL', 'LSSLSSLS', 'LSSLSLSS', 'LSSLSLL', 'LSSLLSSS', 'LSSLLSL', 'LSSLLLS', 'LSLSSSSSS', 'LSLSSSSL', 'LSLSSSLS', 'LSLSSLSS', 'LSLSSLL', 'LSLSLSSS', 'LSLSLSL', 'LSLSLLS', 'LSLLSSSS', 'LSLLSSL', 'LSLLSLS', 'LSLLLSS', 'LSLLLL', 'LLSSSSSSS', 'LLSSSSSL', 'LLSSSSLS', 'LLSSSLSS', 'LLSSSLL', 'LLSSLSSS', 'LLSSLSL', 'LLSSLLS', 'LLSLSSSS', 'LLSLSSL', 'LLSLSLS', 'LLSLLSS', 'LLSLLL', 'LLLSSSSS', 'LLLSSSL', 'LLLSSLS', 'LLLSLSS', 'LLLSLL', 'LLLLSSS', 'LLLLSL', 'LLLLLS']\n", | |
"['SSSSSSSSSSSS', 'SSSSSSSSSSL', 'SSSSSSSSSLS', 'SSSSSSSSLSS', 'SSSSSSSSLL', 'SSSSSSSLSSS', 'SSSSSSSLSL', 'SSSSSSSLLS', 'SSSSSSLSSSS', 'SSSSSSLSSL', 'SSSSSSLSLS', 'SSSSSSLLSS', 'SSSSSSLLL', 'SSSSSLSSSSS', 'SSSSSLSSSL', 'SSSSSLSSLS', 'SSSSSLSLSS', 'SSSSSLSLL', 'SSSSSLLSSS', 'SSSSSLLSL', 'SSSSSLLLS', 'SSSSLSSSSSS', 'SSSSLSSSSL', 'SSSSLSSSLS', 'SSSSLSSLSS', 'SSSSLSSLL', 'SSSSLSLSSS', 'SSSSLSLSL', 'SSSSLSLLS', 'SSSSLLSSSS', 'SSSSLLSSL', 'SSSSLLSLS', 'SSSSLLLSS', 'SSSSLLLL', 'SSSLSSSSSSS', 'SSSLSSSSSL', 'SSSLSSSSLS', 'SSSLSSSLSS', 'SSSLSSSLL', 'SSSLSSLSSS', 'SSSLSSLSL', 'SSSLSSLLS', 'SSSLSLSSSS', 'SSSLSLSSL', 'SSSLSLSLS', 'SSSLSLLSS', 'SSSLSLLL', 'SSSLLSSSSS', 'SSSLLSSSL', 'SSSLLSSLS', 'SSSLLSLSS', 'SSSLLSLL', 'SSSLLLSSS', 'SSSLLLSL', 'SSSLLLLS', 'SSLSSSSSSSS', 'SSLSSSSSSL', 'SSLSSSSSLS', 'SSLSSSSLSS', 'SSLSSSSLL', 'SSLSSSLSSS', 'SSLSSSLSL', 'SSLSSSLLS', 'SSLSSLSSSS', 'SSLSSLSSL', 'SSLSSLSLS', 'SSLSSLLSS', 'SSLSSLLL', 'SSLSLSSSSS', 'SSLSLSSSL', 'SSLSLSSLS', 'SSLSLSLSS', 'SSLSLSLL', 'SSLSLLSSS', 'SSLSLLSL', 'SSLSLLLS', 'SSLLSSSSSS', 'SSLLSSSSL', 'SSLLSSSLS', 'SSLLSSLSS', 'SSLLSSLL', 'SSLLSLSSS', 'SSLLSLSL', 'SSLLSLLS', 'SSLLLSSSS', 'SSLLLSSL', 'SSLLLSLS', 'SSLLLLSS', 'SSLLLLL', 'SLSSSSSSSSS', 'SLSSSSSSSL', 'SLSSSSSSLS', 'SLSSSSSLSS', 'SLSSSSSLL', 'SLSSSSLSSS', 'SLSSSSLSL', 'SLSSSSLLS', 'SLSSSLSSSS', 'SLSSSLSSL', 'SLSSSLSLS', 'SLSSSLLSS', 'SLSSSLLL', 'SLSSLSSSSS', 'SLSSLSSSL', 'SLSSLSSLS', 'SLSSLSLSS', 'SLSSLSLL', 'SLSSLLSSS', 'SLSSLLSL', 'SLSSLLLS', 'SLSLSSSSSS', 'SLSLSSSSL', 'SLSLSSSLS', 'SLSLSSLSS', 'SLSLSSLL', 'SLSLSLSSS', 'SLSLSLSL', 'SLSLSLLS', 'SLSLLSSSS', 'SLSLLSSL', 'SLSLLSLS', 'SLSLLLSS', 'SLSLLLL', 'SLLSSSSSSS', 'SLLSSSSSL', 'SLLSSSSLS', 'SLLSSSLSS', 'SLLSSSLL', 'SLLSSLSSS', 'SLLSSLSL', 'SLLSSLLS', 'SLLSLSSSS', 'SLLSLSSL', 'SLLSLSLS', 'SLLSLLSS', 'SLLSLLL', 'SLLLSSSSS', 'SLLLSSSL', 'SLLLSSLS', 'SLLLSLSS', 'SLLLSLL', 'SLLLLSSS', 'SLLLLSL', 'SLLLLLS', 'LSSSSSSSSSS', 'LSSSSSSSSL', 'LSSSSSSSLS', 'LSSSSSSLSS', 'LSSSSSSLL', 'LSSSSSLSSS', 'LSSSSSLSL', 'LSSSSSLLS', 'LSSSSLSSSS', 'LSSSSLSSL', 'LSSSSLSLS', 'LSSSSLLSS', 'LSSSSLLL', 'LSSSLSSSSS', 'LSSSLSSSL', 'LSSSLSSLS', 'LSSSLSLSS', 'LSSSLSLL', 'LSSSLLSSS', 'LSSSLLSL', 'LSSSLLLS', 'LSSLSSSSSS', 'LSSLSSSSL', 'LSSLSSSLS', 'LSSLSSLSS', 'LSSLSSLL', 'LSSLSLSSS', 'LSSLSLSL', 'LSSLSLLS', 'LSSLLSSSS', 'LSSLLSSL', 'LSSLLSLS', 'LSSLLLSS', 'LSSLLLL', 'LSLSSSSSSS', 'LSLSSSSSL', 'LSLSSSSLS', 'LSLSSSLSS', 'LSLSSSLL', 'LSLSSLSSS', 'LSLSSLSL', 'LSLSSLLS', 'LSLSLSSSS', 'LSLSLSSL', 'LSLSLSLS', 'LSLSLLSS', 'LSLSLLL', 'LSLLSSSSS', 'LSLLSSSL', 'LSLLSSLS', 'LSLLSLSS', 'LSLLSLL', 'LSLLLSSS', 'LSLLLSL', 'LSLLLLS', 'LLSSSSSSSS', 'LLSSSSSSL', 'LLSSSSSLS', 'LLSSSSLSS', 'LLSSSSLL', 'LLSSSLSSS', 'LLSSSLSL', 'LLSSSLLS', 'LLSSLSSSS', 'LLSSLSSL', 'LLSSLSLS', 'LLSSLLSS', 'LLSSLLL', 'LLSLSSSSS', 'LLSLSSSL', 'LLSLSSLS', 'LLSLSLSS', 'LLSLSLL', 'LLSLLSSS', 'LLSLLSL', 'LLSLLLS', 'LLLSSSSSS', 'LLLSSSSL', 'LLLSSSLS', 'LLLSSLSS', 'LLLSSLL', 'LLLSLSSS', 'LLLSLSL', 'LLLSLLS', 'LLLLSSSS', 'LLLLSSL', 'LLLLSLS', 'LLLLLSS', 'LLLLLL']\n", | |
"['SSSSSSSSSSSSS', 'SSSSSSSSSSSL', 'SSSSSSSSSSLS', 'SSSSSSSSSLSS', 'SSSSSSSSSLL', 'SSSSSSSSLSSS', 'SSSSSSSSLSL', 'SSSSSSSSLLS', 'SSSSSSSLSSSS', 'SSSSSSSLSSL', 'SSSSSSSLSLS', 'SSSSSSSLLSS', 'SSSSSSSLLL', 'SSSSSSLSSSSS', 'SSSSSSLSSSL', 'SSSSSSLSSLS', 'SSSSSSLSLSS', 'SSSSSSLSLL', 'SSSSSSLLSSS', 'SSSSSSLLSL', 'SSSSSSLLLS', 'SSSSSLSSSSSS', 'SSSSSLSSSSL', 'SSSSSLSSSLS', 'SSSSSLSSLSS', 'SSSSSLSSLL', 'SSSSSLSLSSS', 'SSSSSLSLSL', 'SSSSSLSLLS', 'SSSSSLLSSSS', 'SSSSSLLSSL', 'SSSSSLLSLS', 'SSSSSLLLSS', 'SSSSSLLLL', 'SSSSLSSSSSSS', 'SSSSLSSSSSL', 'SSSSLSSSSLS', 'SSSSLSSSLSS', 'SSSSLSSSLL', 'SSSSLSSLSSS', 'SSSSLSSLSL', 'SSSSLSSLLS', 'SSSSLSLSSSS', 'SSSSLSLSSL', 'SSSSLSLSLS', 'SSSSLSLLSS', 'SSSSLSLLL', 'SSSSLLSSSSS', 'SSSSLLSSSL', 'SSSSLLSSLS', 'SSSSLLSLSS', 'SSSSLLSLL', 'SSSSLLLSSS', 'SSSSLLLSL', 'SSSSLLLLS', 'SSSLSSSSSSSS', 'SSSLSSSSSSL', 'SSSLSSSSSLS', 'SSSLSSSSLSS', 'SSSLSSSSLL', 'SSSLSSSLSSS', 'SSSLSSSLSL', 'SSSLSSSLLS', 'SSSLSSLSSSS', 'SSSLSSLSSL', 'SSSLSSLSLS', 'SSSLSSLLSS', 'SSSLSSLLL', 'SSSLSLSSSSS', 'SSSLSLSSSL', 'SSSLSLSSLS', 'SSSLSLSLSS', 'SSSLSLSLL', 'SSSLSLLSSS', 'SSSLSLLSL', 'SSSLSLLLS', 'SSSLLSSSSSS', 'SSSLLSSSSL', 'SSSLLSSSLS', 'SSSLLSSLSS', 'SSSLLSSLL', 'SSSLLSLSSS', 'SSSLLSLSL', 'SSSLLSLLS', 'SSSLLLSSSS', 'SSSLLLSSL', 'SSSLLLSLS', 'SSSLLLLSS', 'SSSLLLLL', 'SSLSSSSSSSSS', 'SSLSSSSSSSL', 'SSLSSSSSSLS', 'SSLSSSSSLSS', 'SSLSSSSSLL', 'SSLSSSSLSSS', 'SSLSSSSLSL', 'SSLSSSSLLS', 'SSLSSSLSSSS', 'SSLSSSLSSL', 'SSLSSSLSLS', 'SSLSSSLLSS', 'SSLSSSLLL', 'SSLSSLSSSSS', 'SSLSSLSSSL', 'SSLSSLSSLS', 'SSLSSLSLSS', 'SSLSSLSLL', 'SSLSSLLSSS', 'SSLSSLLSL', 'SSLSSLLLS', 'SSLSLSSSSSS', 'SSLSLSSSSL', 'SSLSLSSSLS', 'SSLSLSSLSS', 'SSLSLSSLL', 'SSLSLSLSSS', 'SSLSLSLSL', 'SSLSLSLLS', 'SSLSLLSSSS', 'SSLSLLSSL', 'SSLSLLSLS', 'SSLSLLLSS', 'SSLSLLLL', 'SSLLSSSSSSS', 'SSLLSSSSSL', 'SSLLSSSSLS', 'SSLLSSSLSS', 'SSLLSSSLL', 'SSLLSSLSSS', 'SSLLSSLSL', 'SSLLSSLLS', 'SSLLSLSSSS', 'SSLLSLSSL', 'SSLLSLSLS', 'SSLLSLLSS', 'SSLLSLLL', 'SSLLLSSSSS', 'SSLLLSSSL', 'SSLLLSSLS', 'SSLLLSLSS', 'SSLLLSLL', 'SSLLLLSSS', 'SSLLLLSL', 'SSLLLLLS', 'SLSSSSSSSSSS', 'SLSSSSSSSSL', 'SLSSSSSSSLS', 'SLSSSSSSLSS', 'SLSSSSSSLL', 'SLSSSSSLSSS', 'SLSSSSSLSL', 'SLSSSSSLLS', 'SLSSSSLSSSS', 'SLSSSSLSSL', 'SLSSSSLSLS', 'SLSSSSLLSS', 'SLSSSSLLL', 'SLSSSLSSSSS', 'SLSSSLSSSL', 'SLSSSLSSLS', 'SLSSSLSLSS', 'SLSSSLSLL', 'SLSSSLLSSS', 'SLSSSLLSL', 'SLSSSLLLS', 'SLSSLSSSSSS', 'SLSSLSSSSL', 'SLSSLSSSLS', 'SLSSLSSLSS', 'SLSSLSSLL', 'SLSSLSLSSS', 'SLSSLSLSL', 'SLSSLSLLS', 'SLSSLLSSSS', 'SLSSLLSSL', 'SLSSLLSLS', 'SLSSLLLSS', 'SLSSLLLL', 'SLSLSSSSSSS', 'SLSLSSSSSL', 'SLSLSSSSLS', 'SLSLSSSLSS', 'SLSLSSSLL', 'SLSLSSLSSS', 'SLSLSSLSL', 'SLSLSSLLS', 'SLSLSLSSSS', 'SLSLSLSSL', 'SLSLSLSLS', 'SLSLSLLSS', 'SLSLSLLL', 'SLSLLSSSSS', 'SLSLLSSSL', 'SLSLLSSLS', 'SLSLLSLSS', 'SLSLLSLL', 'SLSLLLSSS', 'SLSLLLSL', 'SLSLLLLS', 'SLLSSSSSSSS', 'SLLSSSSSSL', 'SLLSSSSSLS', 'SLLSSSSLSS', 'SLLSSSSLL', 'SLLSSSLSSS', 'SLLSSSLSL', 'SLLSSSLLS', 'SLLSSLSSSS', 'SLLSSLSSL', 'SLLSSLSLS', 'SLLSSLLSS', 'SLLSSLLL', 'SLLSLSSSSS', 'SLLSLSSSL', 'SLLSLSSLS', 'SLLSLSLSS', 'SLLSLSLL', 'SLLSLLSSS', 'SLLSLLSL', 'SLLSLLLS', 'SLLLSSSSSS', 'SLLLSSSSL', 'SLLLSSSLS', 'SLLLSSLSS', 'SLLLSSLL', 'SLLLSLSSS', 'SLLLSLSL', 'SLLLSLLS', 'SLLLLSSSS', 'SLLLLSSL', 'SLLLLSLS', 'SLLLLLSS', 'SLLLLLL', 'LSSSSSSSSSSS', 'LSSSSSSSSSL', 'LSSSSSSSSLS', 'LSSSSSSSLSS', 'LSSSSSSSLL', 'LSSSSSSLSSS', 'LSSSSSSLSL', 'LSSSSSSLLS', 'LSSSSSLSSSS', 'LSSSSSLSSL', 'LSSSSSLSLS', 'LSSSSSLLSS', 'LSSSSSLLL', 'LSSSSLSSSSS', 'LSSSSLSSSL', 'LSSSSLSSLS', 'LSSSSLSLSS', 'LSSSSLSLL', 'LSSSSLLSSS', 'LSSSSLLSL', 'LSSSSLLLS', 'LSSSLSSSSSS', 'LSSSLSSSSL', 'LSSSLSSSLS', 'LSSSLSSLSS', 'LSSSLSSLL', 'LSSSLSLSSS', 'LSSSLSLSL', 'LSSSLSLLS', 'LSSSLLSSSS', 'LSSSLLSSL', 'LSSSLLSLS', 'LSSSLLLSS', 'LSSSLLLL', 'LSSLSSSSSSS', 'LSSLSSSSSL', 'LSSLSSSSLS', 'LSSLSSSLSS', 'LSSLSSSLL', 'LSSLSSLSSS', 'LSSLSSLSL', 'LSSLSSLLS', 'LSSLSLSSSS', 'LSSLSLSSL', 'LSSLSLSLS', 'LSSLSLLSS', 'LSSLSLLL', 'LSSLLSSSSS', 'LSSLLSSSL', 'LSSLLSSLS', 'LSSLLSLSS', 'LSSLLSLL', 'LSSLLLSSS', 'LSSLLLSL', 'LSSLLLLS', 'LSLSSSSSSSS', 'LSLSSSSSSL', 'LSLSSSSSLS', 'LSLSSSSLSS', 'LSLSSSSLL', 'LSLSSSLSSS', 'LSLSSSLSL', 'LSLSSSLLS', 'LSLSSLSSSS', 'LSLSSLSSL', 'LSLSSLSLS', 'LSLSSLLSS', 'LSLSSLLL', 'LSLSLSSSSS', 'LSLSLSSSL', 'LSLSLSSLS', 'LSLSLSLSS', 'LSLSLSLL', 'LSLSLLSSS', 'LSLSLLSL', 'LSLSLLLS', 'LSLLSSSSSS', 'LSLLSSSSL', 'LSLLSSSLS', 'LSLLSSLSS', 'LSLLSSLL', 'LSLLSLSSS', 'LSLLSLSL', 'LSLLSLLS', 'LSLLLSSSS', 'LSLLLSSL', 'LSLLLSLS', 'LSLLLLSS', 'LSLLLLL', 'LLSSSSSSSSS', 'LLSSSSSSSL', 'LLSSSSSSLS', 'LLSSSSSLSS', 'LLSSSSSLL', 'LLSSSSLSSS', 'LLSSSSLSL', 'LLSSSSLLS', 'LLSSSLSSSS', 'LLSSSLSSL', 'LLSSSLSLS', 'LLSSSLLSS', 'LLSSSLLL', 'LLSSLSSSSS', 'LLSSLSSSL', 'LLSSLSSLS', 'LLSSLSLSS', 'LLSSLSLL', 'LLSSLLSSS', 'LLSSLLSL', 'LLSSLLLS', 'LLSLSSSSSS', 'LLSLSSSSL', 'LLSLSSSLS', 'LLSLSSLSS', 'LLSLSSLL', 'LLSLSLSSS', 'LLSLSLSL', 'LLSLSLLS', 'LLSLLSSSS', 'LLSLLSSL', 'LLSLLSLS', 'LLSLLLSS', 'LLSLLLL', 'LLLSSSSSSS', 'LLLSSSSSL', 'LLLSSSSLS', 'LLLSSSLSS', 'LLLSSSLL', 'LLLSSLSSS', 'LLLSSLSL', 'LLLSSLLS', 'LLLSLSSSS', 'LLLSLSSL', 'LLLSLSLS', 'LLLSLLSS', 'LLLSLLL', 'LLLLSSSSS', 'LLLLSSSL', 'LLLLSSLS', 'LLLLSLSS', 'LLLLSLL', 'LLLLLSSS', 'LLLLLSL', 'LLLLLLS']\n", | |
"['SSSSSSSSSSSSSS', 'SSSSSSSSSSSSL', 'SSSSSSSSSSSLS', 'SSSSSSSSSSLSS', 'SSSSSSSSSSLL', 'SSSSSSSSSLSSS', 'SSSSSSSSSLSL', 'SSSSSSSSSLLS', 'SSSSSSSSLSSSS', 'SSSSSSSSLSSL', 'SSSSSSSSLSLS', 'SSSSSSSSLLSS', 'SSSSSSSSLLL', 'SSSSSSSLSSSSS', 'SSSSSSSLSSSL', 'SSSSSSSLSSLS', 'SSSSSSSLSLSS', 'SSSSSSSLSLL', 'SSSSSSSLLSSS', 'SSSSSSSLLSL', 'SSSSSSSLLLS', 'SSSSSSLSSSSSS', 'SSSSSSLSSSSL', 'SSSSSSLSSSLS', 'SSSSSSLSSLSS', 'SSSSSSLSSLL', 'SSSSSSLSLSSS', 'SSSSSSLSLSL', 'SSSSSSLSLLS', 'SSSSSSLLSSSS', 'SSSSSSLLSSL', 'SSSSSSLLSLS', 'SSSSSSLLLSS', 'SSSSSSLLLL', 'SSSSSLSSSSSSS', 'SSSSSLSSSSSL', 'SSSSSLSSSSLS', 'SSSSSLSSSLSS', 'SSSSSLSSSLL', 'SSSSSLSSLSSS', 'SSSSSLSSLSL', 'SSSSSLSSLLS', 'SSSSSLSLSSSS', 'SSSSSLSLSSL', 'SSSSSLSLSLS', 'SSSSSLSLLSS', 'SSSSSLSLLL', 'SSSSSLLSSSSS', 'SSSSSLLSSSL', 'SSSSSLLSSLS', 'SSSSSLLSLSS', 'SSSSSLLSLL', 'SSSSSLLLSSS', 'SSSSSLLLSL', 'SSSSSLLLLS', 'SSSSLSSSSSSSS', 'SSSSLSSSSSSL', 'SSSSLSSSSSLS', 'SSSSLSSSSLSS', 'SSSSLSSSSLL', 'SSSSLSSSLSSS', 'SSSSLSSSLSL', 'SSSSLSSSLLS', 'SSSSLSSLSSSS', 'SSSSLSSLSSL', 'SSSSLSSLSLS', 'SSSSLSSLLSS', 'SSSSLSSLLL', 'SSSSLSLSSSSS', 'SSSSLSLSSSL', 'SSSSLSLSSLS', 'SSSSLSLSLSS', 'SSSSLSLSLL', 'SSSSLSLLSSS', 'SSSSLSLLSL', 'SSSSLSLLLS', 'SSSSLLSSSSSS', 'SSSSLLSSSSL', 'SSSSLLSSSLS', 'SSSSLLSSLSS', 'SSSSLLSSLL', 'SSSSLLSLSSS', 'SSSSLLSLSL', 'SSSSLLSLLS', 'SSSSLLLSSSS', 'SSSSLLLSSL', 'SSSSLLLSLS', 'SSSSLLLLSS', 'SSSSLLLLL', 'SSSLSSSSSSSSS', 'SSSLSSSSSSSL', 'SSSLSSSSSSLS', 'SSSLSSSSSLSS', 'SSSLSSSSSLL', 'SSSLSSSSLSSS', 'SSSLSSSSLSL', 'SSSLSSSSLLS', 'SSSLSSSLSSSS', 'SSSLSSSLSSL', 'SSSLSSSLSLS', 'SSSLSSSLLSS', 'SSSLSSSLLL', 'SSSLSSLSSSSS', 'SSSLSSLSSSL', 'SSSLSSLSSLS', 'SSSLSSLSLSS', 'SSSLSSLSLL', 'SSSLSSLLSSS', 'SSSLSSLLSL', 'SSSLSSLLLS', 'SSSLSLSSSSSS', 'SSSLSLSSSSL', 'SSSLSLSSSLS', 'SSSLSLSSLSS', 'SSSLSLSSLL', 'SSSLSLSLSSS', 'SSSLSLSLSL', 'SSSLSLSLLS', 'SSSLSLLSSSS', 'SSSLSLLSSL', 'SSSLSLLSLS', 'SSSLSLLLSS', 'SSSLSLLLL', 'SSSLLSSSSSSS', 'SSSLLSSSSSL', 'SSSLLSSSSLS', 'SSSLLSSSLSS', 'SSSLLSSSLL', 'SSSLLSSLSSS', 'SSSLLSSLSL', 'SSSLLSSLLS', 'SSSLLSLSSSS', 'SSSLLSLSSL', 'SSSLLSLSLS', 'SSSLLSLLSS', 'SSSLLSLLL', 'SSSLLLSSSSS', 'SSSLLLSSSL', 'SSSLLLSSLS', 'SSSLLLSLSS', 'SSSLLLSLL', 'SSSLLLLSSS', 'SSSLLLLSL', 'SSSLLLLLS', 'SSLSSSSSSSSSS', 'SSLSSSSSSSSL', 'SSLSSSSSSSLS', 'SSLSSSSSSLSS', 'SSLSSSSSSLL', 'SSLSSSSSLSSS', 'SSLSSSSSLSL', 'SSLSSSSSLLS', 'SSLSSSSLSSSS', 'SSLSSSSLSSL', 'SSLSSSSLSLS', 'SSLSSSSLLSS', 'SSLSSSSLLL', 'SSLSSSLSSSSS', 'SSLSSSLSSSL', 'SSLSSSLSSLS', 'SSLSSSLSLSS', 'SSLSSSLSLL', 'SSLSSSLLSSS', 'SSLSSSLLSL', 'SSLSSSLLLS', 'SSLSSLSSSSSS', 'SSLSSLSSSSL', 'SSLSSLSSSLS', 'SSLSSLSSLSS', 'SSLSSLSSLL', 'SSLSSLSLSSS', 'SSLSSLSLSL', 'SSLSSLSLLS', 'SSLSSLLSSSS', 'SSLSSLLSSL', 'SSLSSLLSLS', 'SSLSSLLLSS', 'SSLSSLLLL', 'SSLSLSSSSSSS', 'SSLSLSSSSSL', 'SSLSLSSSSLS', 'SSLSLSSSLSS', 'SSLSLSSSLL', 'SSLSLSSLSSS', 'SSLSLSSLSL', 'SSLSLSSLLS', 'SSLSLSLSSSS', 'SSLSLSLSSL', 'SSLSLSLSLS', 'SSLSLSLLSS', 'SSLSLSLLL', 'SSLSLLSSSSS', 'SSLSLLSSSL', 'SSLSLLSSLS', 'SSLSLLSLSS', 'SSLSLLSLL', 'SSLSLLLSSS', 'SSLSLLLSL', 'SSLSLLLLS', 'SSLLSSSSSSSS', 'SSLLSSSSSSL', 'SSLLSSSSSLS', 'SSLLSSSSLSS', 'SSLLSSSSLL', 'SSLLSSSLSSS', 'SSLLSSSLSL', 'SSLLSSSLLS', 'SSLLSSLSSSS', 'SSLLSSLSSL', 'SSLLSSLSLS', 'SSLLSSLLSS', 'SSLLSSLLL', 'SSLLSLSSSSS', 'SSLLSLSSSL', 'SSLLSLSSLS', 'SSLLSLSLSS', 'SSLLSLSLL', 'SSLLSLLSSS', 'SSLLSLLSL', 'SSLLSLLLS', 'SSLLLSSSSSS', 'SSLLLSSSSL', 'SSLLLSSSLS', 'SSLLLSSLSS', 'SSLLLSSLL', 'SSLLLSLSSS', 'SSLLLSLSL', 'SSLLLSLLS', 'SSLLLLSSSS', 'SSLLLLSSL', 'SSLLLLSLS', 'SSLLLLLSS', 'SSLLLLLL', 'SLSSSSSSSSSSS', 'SLSSSSSSSSSL', 'SLSSSSSSSSLS', 'SLSSSSSSSLSS', 'SLSSSSSSSLL', 'SLSSSSSSLSSS', 'SLSSSSSSLSL', 'SLSSSSSSLLS', 'SLSSSSSLSSSS', 'SLSSSSSLSSL', 'SLSSSSSLSLS', 'SLSSSSSLLSS', 'SLSSSSSLLL', 'SLSSSSLSSSSS', 'SLSSSSLSSSL', 'SLSSSSLSSLS', 'SLSSSSLSLSS', 'SLSSSSLSLL', 'SLSSSSLLSSS', 'SLSSSSLLSL', 'SLSSSSLLLS', 'SLSSSLSSSSSS', 'SLSSSLSSSSL', 'SLSSSLSSSLS', 'SLSSSLSSLSS', 'SLSSSLSSLL', 'SLSSSLSLSSS', 'SLSSSLSLSL', 'SLSSSLSLLS', 'SLSSSLLSSSS', 'SLSSSLLSSL', 'SLSSSLLSLS', 'SLSSSLLLSS', 'SLSSSLLLL', 'SLSSLSSSSSSS', 'SLSSLSSSSSL', 'SLSSLSSSSLS', 'SLSSLSSSLSS', 'SLSSLSSSLL', 'SLSSLSSLSSS', 'SLSSLSSLSL', 'SLSSLSSLLS', 'SLSSLSLSSSS', 'SLSSLSLSSL', 'SLSSLSLSLS', 'SLSSLSLLSS', 'SLSSLSLLL', 'SLSSLLSSSSS', 'SLSSLLSSSL', 'SLSSLLSSLS', 'SLSSLLSLSS', 'SLSSLLSLL', 'SLSSLLLSSS', 'SLSSLLLSL', 'SLSSLLLLS', 'SLSLSSSSSSSS', 'SLSLSSSSSSL', 'SLSLSSSSSLS', 'SLSLSSSSLSS', 'SLSLSSSSLL', 'SLSLSSSLSSS', 'SLSLSSSLSL', 'SLSLSSSLLS', 'SLSLSSLSSSS', 'SLSLSSLSSL', 'SLSLSSLSLS', 'SLSLSSLLSS', 'SLSLSSLLL', 'SLSLSLSSSSS', 'SLSLSLSSSL', 'SLSLSLSSLS', 'SLSLSLSLSS', 'SLSLSLSLL', 'SLSLSLLSSS', 'SLSLSLLSL', 'SLSLSLLLS', 'SLSLLSSSSSS', 'SLSLLSSSSL', 'SLSLLSSSLS', 'SLSLLSSLSS', 'SLSLLSSLL', 'SLSLLSLSSS', 'SLSLLSLSL', 'SLSLLSLLS', 'SLSLLLSSSS', 'SLSLLLSSL', 'SLSLLLSLS', 'SLSLLLLSS', 'SLSLLLLL', 'SLLSSSSSSSSS', 'SLLSSSSSSSL', 'SLLSSSSSSLS', 'SLLSSSSSLSS', 'SLLSSSSSLL', 'SLLSSSSLSSS', 'SLLSSSSLSL', 'SLLSSSSLLS', 'SLLSSSLSSSS', 'SLLSSSLSSL', 'SLLSSSLSLS', 'SLLSSSLLSS', 'SLLSSSLLL', 'SLLSSLSSSSS', 'SLLSSLSSSL', 'SLLSSLSSLS', 'SLLSSLSLSS', 'SLLSSLSLL', 'SLLSSLLSSS', 'SLLSSLLSL', 'SLLSSLLLS', 'SLLSLSSSSSS', 'SLLSLSSSSL', 'SLLSLSSSLS', 'SLLSLSSLSS', 'SLLSLSSLL', 'SLLSLSLSSS', 'SLLSLSLSL', 'SLLSLSLLS', 'SLLSLLSSSS', 'SLLSLLSSL', 'SLLSLLSLS', 'SLLSLLLSS', 'SLLSLLLL', 'SLLLSSSSSSS', 'SLLLSSSSSL', 'SLLLSSSSLS', 'SLLLSSSLSS', 'SLLLSSSLL', 'SLLLSSLSSS', 'SLLLSSLSL', 'SLLLSSLLS', 'SLLLSLSSSS', 'SLLLSLSSL', 'SLLLSLSLS', 'SLLLSLLSS', 'SLLLSLLL', 'SLLLLSSSSS', 'SLLLLSSSL', 'SLLLLSSLS', 'SLLLLSLSS', 'SLLLLSLL', 'SLLLLLSSS', 'SLLLLLSL', 'SLLLLLLS', 'LSSSSSSSSSSSS', 'LSSSSSSSSSSL', 'LSSSSSSSSSLS', 'LSSSSSSSSLSS', 'LSSSSSSSSLL', 'LSSSSSSSLSSS', 'LSSSSSSSLSL', 'LSSSSSSSLLS', 'LSSSSSSLSSSS', 'LSSSSSSLSSL', 'LSSSSSSLSLS', 'LSSSSSSLLSS', 'LSSSSSSLLL', 'LSSSSSLSSSSS', 'LSSSSSLSSSL', 'LSSSSSLSSLS', 'LSSSSSLSLSS', 'LSSSSSLSLL', 'LSSSSSLLSSS', 'LSSSSSLLSL', 'LSSSSSLLLS', 'LSSSSLSSSSSS', 'LSSSSLSSSSL', 'LSSSSLSSSLS', 'LSSSSLSSLSS', 'LSSSSLSSLL', 'LSSSSLSLSSS', 'LSSSSLSLSL', 'LSSSSLSLLS', 'LSSSSLLSSSS', 'LSSSSLLSSL', 'LSSSSLLSLS', 'LSSSSLLLSS', 'LSSSSLLLL', 'LSSSLSSSSSSS', 'LSSSLSSSSSL', 'LSSSLSSSSLS', 'LSSSLSSSLSS', 'LSSSLSSSLL', 'LSSSLSSLSSS', 'LSSSLSSLSL', 'LSSSLSSLLS', 'LSSSLSLSSSS', 'LSSSLSLSSL', 'LSSSLSLSLS', 'LSSSLSLLSS', 'LSSSLSLLL', 'LSSSLLSSSSS', 'LSSSLLSSSL', 'LSSSLLSSLS', 'LSSSLLSLSS', 'LSSSLLSLL', 'LSSSLLLSSS', 'LSSSLLLSL', 'LSSSLLLLS', 'LSSLSSSSSSSS', 'LSSLSSSSSSL', 'LSSLSSSSSLS', 'LSSLSSSSLSS', 'LSSLSSSSLL', 'LSSLSSSLSSS', 'LSSLSSSLSL', 'LSSLSSSLLS', 'LSSLSSLSSSS', 'LSSLSSLSSL', 'LSSLSSLSLS', 'LSSLSSLLSS', 'LSSLSSLLL', 'LSSLSLSSSSS', 'LSSLSLSSSL', 'LSSLSLSSLS', 'LSSLSLSLSS', 'LSSLSLSLL', 'LSSLSLLSSS', 'LSSLSLLSL', 'LSSLSLLLS', 'LSSLLSSSSSS', 'LSSLLSSSSL', 'LSSLLSSSLS', 'LSSLLSSLSS', 'LSSLLSSLL', 'LSSLLSLSSS', 'LSSLLSLSL', 'LSSLLSLLS', 'LSSLLLSSSS', 'LSSLLLSSL', 'LSSLLLSLS', 'LSSLLLLSS', 'LSSLLLLL', 'LSLSSSSSSSSS', 'LSLSSSSSSSL', 'LSLSSSSSSLS', 'LSLSSSSSLSS', 'LSLSSSSSLL', 'LSLSSSSLSSS', 'LSLSSSSLSL', 'LSLSSSSLLS', 'LSLSSSLSSSS', 'LSLSSSLSSL', 'LSLSSSLSLS', 'LSLSSSLLSS', 'LSLSSSLLL', 'LSLSSLSSSSS', 'LSLSSLSSSL', 'LSLSSLSSLS', 'LSLSSLSLSS', 'LSLSSLSLL', 'LSLSSLLSSS', 'LSLSSLLSL', 'LSLSSLLLS', 'LSLSLSSSSSS', 'LSLSLSSSSL', 'LSLSLSSSLS', 'LSLSLSSLSS', 'LSLSLSSLL', 'LSLSLSLSSS', 'LSLSLSLSL', 'LSLSLSLLS', 'LSLSLLSSSS', 'LSLSLLSSL', 'LSLSLLSLS', 'LSLSLLLSS', 'LSLSLLLL', 'LSLLSSSSSSS', 'LSLLSSSSSL', 'LSLLSSSSLS', 'LSLLSSSLSS', 'LSLLSSSLL', 'LSLLSSLSSS', 'LSLLSSLSL', 'LSLLSSLLS', 'LSLLSLSSSS', 'LSLLSLSSL', 'LSLLSLSLS', 'LSLLSLLSS', 'LSLLSLLL', 'LSLLLSSSSS', 'LSLLLSSSL', 'LSLLLSSLS', 'LSLLLSLSS', 'LSLLLSLL', 'LSLLLLSSS', 'LSLLLLSL', 'LSLLLLLS', 'LLSSSSSSSSSS', 'LLSSSSSSSSL', 'LLSSSSSSSLS', 'LLSSSSSSLSS', 'LLSSSSSSLL', 'LLSSSSSLSSS', 'LLSSSSSLSL', 'LLSSSSSLLS', 'LLSSSSLSSSS', 'LLSSSSLSSL', 'LLSSSSLSLS', 'LLSSSSLLSS', 'LLSSSSLLL', 'LLSSSLSSSSS', 'LLSSSLSSSL', 'LLSSSLSSLS', 'LLSSSLSLSS', 'LLSSSLSLL', 'LLSSSLLSSS', 'LLSSSLLSL', 'LLSSSLLLS', 'LLSSLSSSSSS', 'LLSSLSSSSL', 'LLSSLSSSLS', 'LLSSLSSLSS', 'LLSSLSSLL', 'LLSSLSLSSS', 'LLSSLSLSL', 'LLSSLSLLS', 'LLSSLLSSSS', 'LLSSLLSSL', 'LLSSLLSLS', 'LLSSLLLSS', 'LLSSLLLL', 'LLSLSSSSSSS', 'LLSLSSSSSL', 'LLSLSSSSLS', 'LLSLSSSLSS', 'LLSLSSSLL', 'LLSLSSLSSS', 'LLSLSSLSL', 'LLSLSSLLS', 'LLSLSLSSSS', 'LLSLSLSSL', 'LLSLSLSLS', 'LLSLSLLSS', 'LLSLSLLL', 'LLSLLSSSSS', 'LLSLLSSSL', 'LLSLLSSLS', 'LLSLLSLSS', 'LLSLLSLL', 'LLSLLLSSS', 'LLSLLLSL', 'LLSLLLLS', 'LLLSSSSSSSS', 'LLLSSSSSSL', 'LLLSSSSSLS', 'LLLSSSSLSS', 'LLLSSSSLL', 'LLLSSSLSSS', 'LLLSSSLSL', 'LLLSSSLLS', 'LLLSSLSSSS', 'LLLSSLSSL', 'LLLSSLSLS', 'LLLSSLLSS', 'LLLSSLLL', 'LLLSLSSSSS', 'LLLSLSSSL', 'LLLSLSSLS', 'LLLSLSLSS', 'LLLSLSLL', 'LLLSLLSSS', 'LLLSLLSL', 'LLLSLLLS', 'LLLLSSSSSS', 'LLLLSSSSL', 'LLLLSSSLS', 'LLLLSSLSS', 'LLLLSSLL', 'LLLLSLSSS', 'LLLLSLSL', 'LLLLSLLS', 'LLLLLSSSS', 'LLLLLSSL', 'LLLLLSLS', 'LLLLLLSS', 'LLLLLLL']\n" | |
] | |
} | |
], | |
"prompt_number": 9 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"assert(1==1)" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 7 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"assert(1==0)" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"ename": "AssertionError", | |
"evalue": "", | |
"output_type": "pyerr", | |
"traceback": [ | |
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", | |
"\u001b[0;32m<ipython-input-8-586389fbe9b9>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32massert\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m==\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", | |
"\u001b[0;31mAssertionError\u001b[0m: " | |
] | |
} | |
], | |
"prompt_number": 8 | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Play with these functions. Then:\n", | |
"(a) Use assert to instrument a copy of virahanka1 to make sure that the cases n=0,1,2 are computed correctly (read the python documentation for assert and unittest) \n", | |
"(b) n not an int cannot happen; the function should return None in this case. You may choose to handle an exception or use a conditional\n", | |
"(c) use the python timeit module to get average running times for all three functions, from n=1..15. Report these in a python dictionary with keys the function name and values a list of times nor n points For bonus points, put these in a Pandas DataFrame and plot. You will find the Pandas documentation and especially this: http://pandas.pydata.org/pandas-docs/dev/visualization.html" | |
] | |
} | |
], | |
"metadata": {} | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment