Munchausen numbers: Difference between revisions
Content added Content deleted
Line 1,263: | Line 1,263: | ||
# |
# isMunchausen :: Int -> Bool |
||
def isMunchausen(n): |
def isMunchausen(n): |
||
return n == foldl( |
return n == foldl( |
||
lambda n: lambda c: (lambda |
lambda n: lambda c: (lambda i=digitToInt(c): n + i**i)() |
||
)(0)(str(n)) |
)(0)(str(n)) |
||
Line 1,285: | Line 1,285: | ||
return None |
return None |
||
else: |
else: |
||
dec = oc - |
dec = oc - 48 # 0 |
||
hexu = oc - |
hexu = oc - 65 # A |
||
hexl = oc - |
hexl = oc - 97 # a |
||
return dec if 9 >= dec else ( |
return dec if 9 >= dec else ( |
||
10 + hexu if 0 <= hexu and 5 >= hexu else ( |
10 + hexu if 0 <= hexu and 5 >= hexu else ( |