-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsolution.py
27 lines (22 loc) · 951 Bytes
/
solution.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
# Create the function prefill that returns an array of n elements that all have the same value v.
# See if you can do this without using a loop.
# You have to validate input:
# v can be anything (primitive or otherwise)
# if v is ommited, fill the array with undefined
# if n is 0, return an empty array
# if n is anything other than an integer or integer-formatted string (e.g. '123') that is >=0, throw a TypeError
# When throwing a TypeError, the message should be n is invalid,
# where you replace n for the actual value passed to the function.
# Code Examples
# prefill(3,1) --> [1,1,1]
# prefill(2,"abc") --> ['abc','abc']
# prefill("1", 1) --> [1]
# prefill(3, prefill(2,'2d'))
# --> [['2d','2d'],['2d','2d'],['2d','2d']]
# prefill("xyz", 1)
# --> throws TypeError with message "xyz is invalid"
def prefill(n, v=None):
try:
return [v] * int(n)
except Exception as exc:
raise TypeError(f'{n} is invalid') from exc