DEV Community

Discussion on: How did they do all that in one line? A Codewars challenge explanation

phlash909 profile image
Phil Ashby

Nested list comprehensions, nice :)

I wonder if the casts between int and str are necessary though.. perhaps there is a solution involving a more traditional add and carry approach?

ekand profile image
Erik Anderson Author

Yeah, I thought it was a neat solution. :)

I'm not familiar with add and carry approaches, but it's interesting to consider whether it's possible without the casts.

phlash909 profile image
Phil Ashby • Edited on

I got bored and had a go. Please do not look at my code.....:)

def up_array(arr):
    res = reduce(lambda r, x: (r[0]+[(x+r[1])%10],(x+r[1])/10), arr[::-1], ([],1))
    return (res[0]+[1])[::-1] if res[1]>0 else res[0][::-1]

print up_array([2, 3, 9])
print up_array([9, 9, 9])
print up_array([9, 9, 0])
print up_array([2, 9, 9])
print up_array([9,9,9,9,9,9,9,9])