"name": "stdout",
"output_type": "stream",
"text": [
- "1 loop, best of 3: 213 ms per loop\n"
+ "1 loop, best of 3: 214 ms per loop\n"
]
}
],
"# Part 2"
]
},
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "80622"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "(sum(len(pi + pj)\n",
+ " for i, pi in enumerate(tours) \n",
+ " for j, pj in enumerate(tours)\n",
+ " if i != j\n",
+ " if not valid(trace_tour(pi))\n",
+ " if not valid(trace_tour(pj))\n",
+ " if valid(trace_tour(pi + pj))) \n",
+ " + \n",
+ " sum(len(t) for t in tours if valid(trace_tour(t))))"
+ ]
+ },
{
"cell_type": "code",
"execution_count": 22,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1 loop, best of 3: 1min 32s per loop\n"
+ ]
+ }
+ ],
"source": [
- "# %%timeit\n",
- "# [(i, j) \n",
- "# for i, pi in enumerate(tours) \n",
- "# for j, pj in enumerate(tours)\n",
- "# if i != j\n",
- "# if not valid(trace_tour(pi))\n",
- "# if not valid(trace_tour(pj))\n",
- "# if valid(trace_tour(pi + pj))]"
+ "%%timeit\n",
+ "[(i, j) \n",
+ " for i, pi in enumerate(tours) \n",
+ " for j, pj in enumerate(tours)\n",
+ " if i != j\n",
+ " if not valid(trace_tour(pi))\n",
+ " if not valid(trace_tour(pj))\n",
+ " if valid(trace_tour(pi + pj))]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
- "1 loop, best of 3: 1.29 s per loop\n"
+ "1 loop, best of 3: 1.18 s per loop\n"
]
}
],