## Task

Given a positive integer as input, return the output as a string in the following format: 

Each element, corresponding to a digit of the number, multiplied by a power of 10 in such a way that with the sum of these elements you can obtain the original number.

## Examples

Input | Output
---   | ---
0     | ""
56    | "5\*10+6"
60    | "6\*10"
999   | "9\*100+9\*10+9"
10004 | "1\*10000+4"

Note: `input >= 0`

Source: codewars | Difficulty: EASY
Tags: Fundamentals

Starter code: def simplify(n):
	

Solutions:
def simplify(n):
	output = []
	exp = 0
	while n:
		(n, r) = divmod(n, 10)
		if r:
			output.append(f'{r}*{10 ** exp}' if exp else f'{r}')
		exp += 1
	return '+'.join(output[::-1])


def simplify(number):
	num = str(number)
	result = []
	for (i, d) in enumerate(num, start=1):
		if d == '0':
			continue
		elif i == len(num):
			result.append(d)
		else:
			result.append(d + '*' + '1' + '0' * (len(num) - i))
	return '+'.join(result)


def simplify(n):
	n = str(n)
	return ''.join(['+' + n[i] + ('*1' + '0' * (len(n) - i - 1) if len(n) - i - 1 > 0 else '') for i in range(0, len(n)) if n[i] != '0'])[1:]


def simplify(number):
	if number == 0:
		return ''
	res = ''
	number = str(number)
	for i in range(len(number)):
		if number[i] == '0':
			continue
		res += f'{number[i]}*{10 ** (len(number) - i - 1)}+'
	res = res.replace('*1+', '')
	if res[-1] == '+':
		return res[:-1]
	return res


def simplify(n, m=0):
	return '' if not n else f"{['', '+'][m]}{str(n)}" if n < 10 else f"{['', '+'][m]}{str(n)[0]}*1{'0' * (len(str(n)) - 1)}" + simplify(int(str(n)[1:]), 1)


def simplify(s):
	a = [i for i in str(s)]
	r = ''
	l = len(a)
	for i in range(len(a)):
		if a[i] == '0':
			continue
		if len(r) > 0:
			r += '+'
		r += a[i]
		if i < len(a) - 1:
			r += '*1' + '0' * (len(a) - i - 1)
	return r


def simplify(number: int) -> str:
	digits = str(number)
	res = [f"{n}*1{'0' * i}" for (i, n) in zip(list(range(len(digits) - 1, 0, -1)), digits) if n != '0']
	return '+'.join(res + ([digits[-1]] if digits[-1] != '0' else []))


def simplify(number):
	if number == 0:
		return ''
	terms = [f'{c}*{10 ** i}' if i else str(c) for (i, c) in enumerate(str(number)[::-1]) if c > '0']
	return '+'.join(reversed(terms))


def simplify(n):
	s = str(n)
	l = len(s)
	result = []
	for (i, d) in enumerate(s, 1):
		if int(d):
			p = '' if l == i else f'*{10 ** (l - i)}'
			result.append(f'{d}{p}')
	return '+'.join(result)


def simplify(n):
	return '+'.join([f'{x}*{10 ** i}' if i else x for (i, x) in enumerate(str(n)[::-1]) if x != '0'][::-1])