# HackerRank Designer Door Mat problem solution in Python

In this HackerRank Designer Door Mat problem solution in python, Mr. Vincent works in a door mat manufacturing company. One day, he designed a new door mat with the following specifications:

Mat size must be N X M. (N is an odd natural number, and M is 3 times N.)

The design should have 'WELCOME' written in the center.

The design pattern should only use |, . and - characters.

## Problem solution in Python 2 programming.

```N, M = map(int,raw_input().split()) # More than 6 lines of code will result in 0 score. Blank lines are not counted.
for i in xrange(1,N,2):
print 3*(N-i)/2*"-"+".|."*i+"-"*(3*(N-i)/2)
print "-"*((3*N-7)/2)+"WELCOME"+"-"*((3*N-7)/2)
for i in xrange(N-2,-1,-2):
print (3*(N-i)/2)*"-"+".|."*i+"-"*(3*(N-i)/2)```

## Problem solution in Python 3 programming.

```n, m = map(int,input().split())
pattern = [('.|.'*(2*i + 1)).center(m, '-') for i in range(n//2)]
print('\n'.join(pattern + ['WELCOME'.center(m, '-')] + pattern[::-1]))```

### Problem solution in pypy programming.

```N, M = map(int,raw_input().split())
for i in xrange(1,N,2):
print "-"*(M/2-(3*i-1)/2)+ ".|."*((i-1)/2)+".|." + ".|."*((i-1)/2) + "-"*(M/2-(3*i-1)/2)
print "WELCOME".center(M,"-")
for i in xrange(N-2,-1,-2):
print "-"*(M/2-(3*i-1)/2) + ".|."*((i-1)/2)+".|." + ".|."*((i-1)/2) + "-"*(M/2-(3*i-1)/2)```

### Problem solution in pypy3 programming.

```n, m = map(int,input().split())
pattern = [('.|.'*(2*i + 1)).center(m, '-') for i in range(n//2)]
print('\n'.join(pattern + ['WELCOME'.center(m, '-')] + pattern[::-1]))```