Skip to content

Commit 272e26d

Browse files
committed
Complete Ascii Art Challenge
1 parent d685112 commit 272e26d

1 file changed

Lines changed: 86 additions & 31 deletions

File tree

sudent_files/ascii_art_challenge.ipynb

Lines changed: 86 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -16,29 +16,80 @@
1616
},
1717
{
1818
"cell_type": "code",
19-
"execution_count": null,
19+
"execution_count": 3,
20+
"id": "17c80a9b",
21+
"metadata": {},
22+
"outputs": [],
23+
"source": [
24+
"testString = \"AAAAABBBBAAA\""
25+
]
26+
},
27+
{
28+
"cell_type": "code",
29+
"execution_count": 28,
2030
"id": "7777d38e",
2131
"metadata": {},
2232
"outputs": [],
2333
"source": [
2434
"def encodeString(stringVal):\n",
25-
" pass\n",
35+
" encodedString = []\n",
36+
" previousChar = stringVal[0]\n",
37+
" count = 0\n",
38+
" for char in stringVal:\n",
39+
" if previousChar != char:\n",
40+
" encodedString.append((previousChar,count))\n",
41+
" count = 0\n",
42+
" previousChar = char\n",
43+
" count = count + 1\n",
44+
" encodedString.append((previousChar,count))\n",
45+
" return encodedString\n",
2646
"\n",
2747
"def decodeString(encodedList):\n",
28-
" pass"
48+
" decodedString = \"\"\n",
49+
" for item in encodedList:\n",
50+
" decodedString = decodedString + item[0] * item[1]\n",
51+
" \n",
52+
" return decodedString\n"
2953
]
3054
},
3155
{
3256
"cell_type": "code",
33-
"execution_count": null,
57+
"execution_count": 40,
58+
"id": "997da749",
59+
"metadata": {},
60+
"outputs": [
61+
{
62+
"name": "stdout",
63+
"output_type": "stream",
64+
"text": [
65+
"[('A', 5), ('B', 4), ('A', 3)]\n"
66+
]
67+
},
68+
{
69+
"data": {
70+
"text/plain": [
71+
"'AAAAABBBBAAA'"
72+
]
73+
},
74+
"execution_count": 40,
75+
"metadata": {},
76+
"output_type": "execute_result"
77+
}
78+
],
79+
"source": [
80+
"encodedString = encodeString(testString)\n",
81+
"print(encodedString)\n",
82+
"decodeString(encodedString)"
83+
]
84+
},
85+
{
86+
"cell_type": "code",
87+
"execution_count": 34,
3488
"id": "3eee6256",
3589
"metadata": {},
3690
"outputs": [],
3791
"source": [
38-
"art = '''\n",
39-
"\n",
40-
" \n",
41-
" \n",
92+
"art = ''' \n",
4293
" %%%%%%%%%%%%%%%%%%% \n",
4394
" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \n",
4495
" %%%%%%%% %%%%%%%% \n",
@@ -69,44 +120,53 @@
69120
" %%%%%%%%% %%%%%%%%% \n",
70121
" %%%%%%%%%%%%%%%%%%%%%%%%%%%%% \n",
71122
" %%%%%%%%%%%% \n",
72-
" \n",
73-
" \n",
74-
"\n",
75123
"'''"
76124
]
77125
},
78126
{
79127
"cell_type": "code",
80-
"execution_count": null,
128+
"execution_count": 39,
81129
"id": "dec27033",
82130
"metadata": {},
83-
"outputs": [],
131+
"outputs": [
132+
{
133+
"name": "stdout",
134+
"output_type": "stream",
135+
"text": [
136+
"[(' ', 80), ('\\n', 1), (' ', 31), ('%', 19), (' ', 30), ('\\n', 1), (' ', 24), ('%', 33), (' ', 23), ('\\n', 1), (' ', 20), ('%', 8), (' ', 25), ('%', 8), (' ', 19), ('\\n', 1), (' ', 16), ('%', 7), (' ', 35), ('%', 6), (' ', 16), ('\\n', 1), (' ', 14), ('%', 6), (' ', 41), ('%', 6), (' ', 13), ('\\n', 1), (' ', 11), ('%', 6), (' ', 47), ('%', 5), (' ', 11), ('\\n', 1), (' ', 10), ('%', 5), (' ', 51), ('%', 5), (' ', 9), ('\\n', 1), (' ', 8), ('%', 5), (' ', 55), ('%', 5), (' ', 7), ('\\n', 1), (' ', 7), ('%', 4), (' ', 17), ('%', 5), (' ', 14), ('%', 5), (' ', 18), ('%', 4), (' ', 6), ('\\n', 1), (' ', 6), ('%', 4), (' ', 17), ('%', 7), (' ', 12), ('%', 7), (' ', 18), ('%', 4), (' ', 5), ('\\n', 1), (' ', 5), ('%', 4), (' ', 18), ('%', 7), (' ', 12), ('%', 7), (' ', 19), ('%', 4), (' ', 4), ('\\n', 1), (' ', 4), ('%', 4), (' ', 19), ('%', 7), (' ', 12), ('%', 7), (' ', 20), ('%', 4), (' ', 3), ('\\n', 1), (' ', 4), ('%', 4), (' ', 20), ('%', 5), (' ', 14), ('%', 5), (' ', 21), ('%', 4), (' ', 3), ('\\n', 1), (' ', 3), ('%', 4), (' ', 67), ('%', 4), (' ', 2), ('\\n', 1), (' ', 3), ('%', 4), (' ', 67), ('%', 4), (' ', 2), ('\\n', 1), (' ', 3), ('%', 4), (' ', 67), ('%', 4), (' ', 2), ('\\n', 1), (' ', 3), ('%', 4), (' ', 54), ('%', 4), (' ', 8), ('%', 4), (' ', 3), ('\\n', 1), (' ', 4), ('%', 4), (' ', 7), ('%', 6), (' ', 40), ('%', 5), (' ', 7), ('%', 4), (' ', 3), ('\\n', 1), (' ', 4), ('%', 4), (' ', 9), ('%', 4), (' ', 39), ('%', 4), (' ', 8), ('%', 4), (' ', 4), ('\\n', 1), (' ', 5), ('%', 4), (' ', 9), ('%', 4), (' ', 37), ('%', 4), (' ', 9), ('%', 4), (' ', 4), ('\\n', 1), (' ', 6), ('%', 4), (' ', 9), ('%', 5), (' ', 34), ('%', 4), (' ', 9), ('%', 4), (' ', 5), ('\\n', 1), (' ', 7), ('%', 5), (' ', 9), ('%', 5), (' ', 29), ('%', 5), (' ', 9), ('%', 5), (' ', 6), ('\\n', 1), (' ', 8), ('%', 5), (' ', 10), ('%', 6), (' ', 24), ('%', 5), (' ', 10), ('%', 4), (' ', 8), ('\\n', 1), (' ', 10), ('%', 5), (' ', 11), ('%', 7), (' ', 15), ('%', 7), (' ', 11), ('%', 5), (' ', 9), ('\\n', 1), (' ', 12), ('%', 5), (' ', 13), ('%', 21), (' ', 13), ('%', 5), (' ', 11), ('\\n', 1), (' ', 14), ('%', 7), (' ', 40), ('%', 5), (' ', 14), ('\\n', 1), (' ', 17), ('%', 7), (' ', 33), ('%', 7), (' ', 16), ('\\n', 1), (' ', 21), ('%', 9), (' ', 21), ('%', 9), (' ', 20), ('\\n', 1), (' ', 26), ('%', 29), (' ', 25), ('\\n', 1), (' ', 35), ('%', 12), (' ', 33), ('\\n', 1)]\n"
137+
]
138+
}
139+
],
84140
"source": [
85-
"encodedString = encodeString(art)"
141+
"encodedString = encodeString(art)\n",
142+
"print(encodedString)"
86143
]
87144
},
88145
{
89146
"cell_type": "code",
90147
"execution_count": null,
91148
"id": "942d4ff8",
92149
"metadata": {},
93-
"outputs": [],
150+
"outputs": [
151+
{
152+
"data": {
153+
"text/plain": [
154+
"' \\n %%%%%%%%%%%%%%%%%%% \\n %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \\n %%%%%%%% %%%%%%%% \\n %%%%%%% %%%%%% \\n %%%%%% %%%%%% \\n %%%%%% %%%%% \\n %%%%% %%%%% \\n %%%%% %%%%% \\n %%%% %%%%% %%%%% %%%% \\n %%%% %%%%%%% %%%%%%% %%%% \\n %%%% %%%%%%% %%%%%%% %%%% \\n %%%% %%%%%%% %%%%%%% %%%% \\n %%%% %%%%% %%%%% %%%% \\n %%%% %%%% \\n %%%% %%%% \\n %%%% %%%% \\n %%%% %%%% %%%% \\n %%%% %%%%%% %%%%% %%%% \\n %%%% %%%% %%%% %%%% \\n %%%% %%%% %%%% %%%% \\n %%%% %%%%% %%%% %%%% \\n %%%%% %%%%% %%%%% %%%%% \\n %%%%% %%%%%% %%%%% %%%% \\n %%%%% %%%%%%% %%%%%%% %%%%% \\n %%%%% %%%%%%%%%%%%%%%%%%%%% %%%%% \\n %%%%%%% %%%%% \\n %%%%%%% %%%%%%% \\n %%%%%%%%% %%%%%%%%% \\n %%%%%%%%%%%%%%%%%%%%%%%%%%%%% \\n %%%%%%%%%%%% \\n'"
155+
]
156+
},
157+
"execution_count": 37,
158+
"metadata": {},
159+
"output_type": "execute_result"
160+
}
161+
],
94162
"source": [
95-
"decodeString(encodedString)"
163+
"decodeString(encodedString)\n"
96164
]
97-
},
98-
{
99-
"cell_type": "code",
100-
"execution_count": null,
101-
"id": "e1485f53",
102-
"metadata": {},
103-
"outputs": [],
104-
"source": []
105165
}
106166
],
107167
"metadata": {
108168
"kernelspec": {
109-
"display_name": "Python 3.10.4 64-bit",
169+
"display_name": "Python 3",
110170
"language": "python",
111171
"name": "python3"
112172
},
@@ -120,12 +180,7 @@
120180
"name": "python",
121181
"nbconvert_exporter": "python",
122182
"pygments_lexer": "ipython3",
123-
"version": "3.10.4"
124-
},
125-
"vscode": {
126-
"interpreter": {
127-
"hash": "949777d72b0d2535278d3dc13498b2535136f6dfe0678499012e853ee9abcab1"
128-
}
183+
"version": "3.12.1"
129184
}
130185
},
131186
"nbformat": 4,

0 commit comments

Comments
 (0)