##Task:

You have to write a function **pattern** which creates the following pattern upto n number of rows. *If the Argument is 0 or a Negative Integer then it should return "" i.e. empty string.*

##Pattern:

    (n)
    (n)(n-1)
    (n)(n-1)(n-2)
    ................
    .................
    (n)(n-1)(n-2)....4
    (n)(n-1)(n-2)....43
    (n)(n-1)(n-2)....432
    (n)(n-1)(n-2)....4321
    
##Examples:

pattern(4):

    4
    43
    432
    4321
    
pattern(6):
 
    6
    65
    654
    6543
    65432
    654321



```Note: There are no blank spaces```

```Hint: Use \n in string to jump to next line```

Source: codewars | Difficulty: EASY
Tags: String algorithms

Fundamentals

Starter code: def pattern(n):
	

Solutions:
def pattern(n):
	return '\n'.join((''.join((str(i) for i in range(n, j, -1))) for j in range(n - 1, -1, -1)))


def pattern(n):
	full = [str(x) for x in range(n, 0, -1)]
	take = lambda x: ''.join(full[:x])
	return '\n'.join((take(x) for x in range(1, n + 1)))


pattern = lambda n: '\n'.join((''.join((str(n - j) for j in range(i + 1))) for i in range(n)))


def pattern(n):
	a = [str(i) for i in range(n, 0, -1)]
	return '\n'.join((''.join(a[:i]) for i in range(1, n + 1)))


def pattern(n):
	return '\n'.join([''.join([str(y) for y in range(n, n - x - 1, -1)]) for x in range(n)])


def pattern(n):
	(out, s) = ([], '')
	for i in reversed(range(1, n + 1)):
		s += str(i)
		out.append(s)
	return '\n'.join(out)


def pattern(n):
	return '\n'.join([''.join(map(str, list(range(n, n - i, -1)))) for i in range(1, n + 1)])