Not considering number 1, the integer 153 is the first integer having this property:
the sum of the third-power of each of its digits  is equal to 153. Take a look:
153 = 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153

The next number that experiments this particular behaviour is 370 with the same power.

Write the function `eq_sum_powdig()`, that finds the numbers below a given upper limit `hMax` that fulfill this property but with different exponents as a power for the digits.

eq_sum_powdig(hMax, exp): ----> sequence of numbers (sorted list) (Number one should not be considered).

Let's see some cases:
```python
eq_sum_powdig(100, 2) ----> []

eq_sum_powdig(1000, 2) ----> []

eq_sum_powdig(200, 3) ----> [153]

eq_sum_powdig(370, 3) ----> [153, 370]
```
Enjoy it !!

Source: codewars | Difficulty: EASY
Tags: Fundamentals

Data structures

Mathematics

Starter code: def eq_sum_powdig(hMax, exp):
	

Solutions:
def eq_sum_powdig(hMax, exp):
	return [i for i in range(2, hMax + 1) if i == sum((int(c) ** exp for c in str(i)))]


def eq_sum_powdig(hMax, exp):
	ret = []
	for i in range(10, hMax + 1):
		if i == sum((int(j) ** exp for j in str(i))):
			ret.append(i)
	return ret


def eq_sum_powdig(hmax, exp):
	return [i for i in range(2, hmax + 1) if sum((int(d) ** exp for d in str(i))) == i]


def valid(num, power):
	return num == sum((int(x) ** power for x in str(num)))

def eq_sum_powdig(hMax, exp):
	return [x for x in range(2, hMax + 1) if valid(x, exp)]


def eq_sum_powdig(hMax, exp):
	list = []
	for n in range(100, hMax + 1):
		product = 0
		for l in str(n):
			product += int(l) ** exp
		if n == product:
			list.append(n)
	return list