16 "execution_count": 12,
24 "[(1, [1, 1]), (2, [2, 2, 2]), (1, [1, 1]), (3, [3])]"
27 "execution_count": 12,
29 "output_type": "execute_result"
33 "[(i, list(ii)) for i, ii in itertools.groupby([1,1,2,2,2,1,1,3])]"
38 "execution_count": 22,
44 "def chunks(sequence):\n",
45 " return [(len(list(ii)), i) for i, ii in itertools.groupby(int(d) for d in sequence)]"
50 "execution_count": 23,
58 "[(3, 1), (2, 2), (1, 1)]"
61 "execution_count": 23,
63 "output_type": "execute_result"
72 "execution_count": 24,
78 "def looksay(chunks):\n",
79 " return ''.join(str(item) for chunk in chunks for item in chunk)"
84 "execution_count": 25,
95 "execution_count": 25,
97 "output_type": "execute_result"
101 "looksay(chunks('111221'))"
106 "execution_count": 26,
113 "output_type": "stream",
123 "13211311123113112211\n",
124 "11131221133112132113212221\n"
130 "for i in range(10):\n",
131 " lss = looksay(chunks(lss))\n",
137 "execution_count": 27,
144 "output_type": "stream",
151 "lss = '3113322113'\n",
152 "for _ in range(40):\n",
153 " lss = looksay(chunks(lss))\n",
159 "execution_count": 28,
166 "output_type": "stream",
173 "lss = '3113322113'\n",
174 "for _ in range(50):\n",
175 " lss = looksay(chunks(lss))\n",
181 "execution_count": null,
191 "display_name": "Python 3",
192 "language": "python",
200 "file_extension": ".py",
201 "mimetype": "text/x-python",
203 "nbconvert_exporter": "python",
204 "pygments_lexer": "ipython3",