PY
py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Nor'wester's description...
'''
Code Challenge 3:
Print the following patterns for corresponding inputs.
1 => 1
2 => 1 2 1
3 => 1 2 1 3 1 2 1
4 => 1 2 1 3 1 2 1 4 1 2 1 3 1 2 1
5 => 1 2 1 3 1 2 1 4 1 2 1 3 1 2 1 5 1 2 1 3 1 2 1 4 1 2 1 3 1 2 1
'''
results = {0:[]}
def pattern(n):
'''
Returns pattern for n as a list
'''
if n not in results:
results[n] = pattern(n-1) + [n] + \
results[n-1]
return results[n]
# Print pattern for 1-6, and for any numbers
# from input. NOTE: Sololearn will timeout
# for anything over 15 (output becomes too
# large)
for i in list(range(1,7)) + [two for i in
Enter to Rename, Shift+Enter to Preview
OUTPUT
Run