mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-02-20 16:22:02 +00:00
Solution for Problem Euler 56 (#1131)
* Solution for Euler 56 * Adding Type and Doctest as per guideline * removing unused import * correcting the way type check works
This commit is contained in:
parent
f3c0b132bc
commit
8eab2f17f4
0
project_euler/problem_56/__init__.py
Normal file
0
project_euler/problem_56/__init__.py
Normal file
26
project_euler/problem_56/sol1.py
Normal file
26
project_euler/problem_56/sol1.py
Normal file
|
@ -0,0 +1,26 @@
|
|||
|
||||
|
||||
def maximum_digital_sum(a: int, b: int) -> int:
|
||||
"""
|
||||
Considering natural numbers of the form, a**b, where a, b < 100,
|
||||
what is the maximum digital sum?
|
||||
:param a:
|
||||
:param b:
|
||||
:return:
|
||||
>>> maximum_digital_sum(10,10)
|
||||
45
|
||||
|
||||
>>> maximum_digital_sum(100,100)
|
||||
972
|
||||
|
||||
>>> maximum_digital_sum(100,200)
|
||||
1872
|
||||
"""
|
||||
|
||||
# RETURN the MAXIMUM from the list of SUMs of the list of INT converted from STR of BASE raised to the POWER
|
||||
return max([sum([int(x) for x in str(base**power)]) for base in range(a) for power in range(b)])
|
||||
|
||||
#Tests
|
||||
if __name__ == "__main__":
|
||||
import doctest
|
||||
doctest.testmod()
|
Loading…
Reference in New Issue
Block a user