Tweaked problem definition and data file for problem 1
[ou-summer-of-code-2017.git] / 01-ticket-prices / ticket-pricing-solution.ipynb
index 59d7046222292e126af1014423668d418e2d8a14..df02700d400d03ef34215d2097fc5cf347616d9e 100644 (file)
     "For example, the data file might look like this:\n",
     "\n",
     "```\n",
-    "db61bb906d 769 Morgantown 3\n",
+    "db61bb90 769 Morgantown 3\n",
     "202c898b5f 1284 Morgantown 21\n",
-    "def36ffc7d 1514 Giessenmestia 21\n",
-    "389018bd07 1052 Estacada 21\n",
-    "a487c4270a 782 Geoje-Si 14\n",
-    "6caf2584a5 724 Stonington-Island 14\n",
+    "def36ffcd 1514 Giessenmestia 21\n",
+    "389018bd0707 1052 Estacada 21\n",
+    "a487c4270 782 Geoje-Si 14\n",
+    "6caf2584a55 724 Stonington-Island 14\n",
     "199608abc5 1209 Nordkapp 21\n",
     "```"
    ]
@@ -36,7 +36,9 @@
     "## Part 1\n",
     "You have a budget of £1200. How many of the holidays can you afford?\n",
     "\n",
-    "Given the example data above, you could afford four of the holidays: the 21 day trip to Morgantown and the trips to  Giessenmestia and Nordkapp are all too expensive."
+    "Given the example data above, you could afford four of the holidays: the trips to Estacada, Geoje-Si and Stonnington-Island, and the three-day trip to Morgantown. \n",
+    "\n",
+    "The 21 day trip to Morgantown and the trips to  Giessenmestia and Nordkapp are all too expensive."
    ]
   },
   {
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 1,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "[['5f12ce1b86', '1192', 'Sukhumi', '14'],\n",
-       " ['0279c8a91b', '1008', 'Estacada', '14'],\n",
-       " ['1faea40e9c', '1085', 'Tambon-Pa-Fa', '14']]"
+       "[['07ea553e', '1348', 'Zhangye-Shi', '14'],\n",
+       " ['02d4b258b8a', '1152', 'Estacada', '3'],\n",
+       " ['d29a0551504e', '1210', 'Zhangye-Shi', '7']]"
       ]
      },
-     "execution_count": 7,
+     "execution_count": 1,
      "metadata": {},
      "output_type": "execute_result"
     }
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 2,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "57"
+       "66"
       ]
      },
-     "execution_count": 25,
+     "execution_count": 2,
      "metadata": {},
      "output_type": "execute_result"
     }
   },
   {
    "cell_type": "code",
-   "execution_count": 6,
+   "execution_count": 3,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "57"
+       "66"
       ]
      },
-     "execution_count": 6,
+     "execution_count": 3,
      "metadata": {},
      "output_type": "execute_result"
     }
     "\n",
     "## Example\n",
     "\n",
-    "Given the holiday list above, the holiday to Geoje-Si (with the standard weighting of 1) has a value of $\\frac{14}{782} = 0.0179$ nights per pound. The best value holiday is the 21 day trip to Morgantown, with a value of $2.9 \\times \\frac{21}{1284} = 0.0474$ nights per pound. Unfortunately, it's unaffordable. \n",
+    "Given the holiday list above, the holiday to Geoje-Si (with the standard weighting of 1) has a value of $\\frac{14}{782} = 0.0179$ nights per pound. \n",
     "\n",
     "The trip to Estacada looks promising, at $\\frac{21}{1052} = 0.0200$ nights per pound. Unfortunately, the weighting for Estacada is low, to the adjusted cost is $0.4 \\times \\frac{21}{1052} = 0.00798$ nights per pound.\n",
     "\n",
+    "The best value holiday is the 21 day trip to Morgantown, with a value of $2.9 \\times \\frac{21}{1284} = 0.0474$ nights per pound. Unfortunately, it's unaffordable. \n",
+    "\n",
     "The best value affordable holiday is the trip to Stonnington Island, with $\\frac{14}{1284} = 0.0193$ nights per pound."
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": 4,
    "metadata": {
     "collapsed": true
    },
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
-   "metadata": {},
+   "execution_count": 5,
+   "metadata": {
+    "collapsed": true
+   },
    "outputs": [],
    "source": [
     "def value_of_destination(name):\n",
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
-   "metadata": {},
+   "execution_count": 6,
+   "metadata": {
+    "collapsed": true
+   },
    "outputs": [],
    "source": [
     "def value_of_holiday(holiday):\n",
   },
   {
    "cell_type": "code",
-   "execution_count": 36,
+   "execution_count": 7,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "'dc16c9b87f'"
+       "'cb24efd90'"
       ]
      },
-     "execution_count": 36,
+     "execution_count": 7,
      "metadata": {},
      "output_type": "execute_result"
     }
   },
   {
    "cell_type": "code",
-   "execution_count": 34,
+   "execution_count": 8,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "'dc16c9b87f'"
+       "'cb24efd90'"
       ]
      },
-     "execution_count": 34,
+     "execution_count": 8,
      "metadata": {},
      "output_type": "execute_result"
     }