No estoy orgulloso de esto, porque abuse del lenguaje (mas especifico del scope) en ciertas partes.
Código Python:
Ver originaldef make_square(n, direction):
square = [['.' for _ in xrange(n)] for _ in xrange(n)]
if direction:
for i in xrange(n):
square[i][i] = '\\'
else:
for i in xrange(n):
square[i][n-1-i] = '/'
return [''.join(line) for line in square]
def make_grid(m, n, s):
squares = [make_square(s, True), make_square(s, False)]
grid = [[squares[(i+j)&1] for i in range(n)] for j in range(m)]
return grid
N = int(raw_input())
for i in range(N):
m, n, s = map(int, raw_input().split())
grid = []
for row in make_grid(m, n, s):
for x in zip(*row):
line = '*%s*' % '*'.join(x)
grid.append(line)
grid.append('*'*len(line))
grid.insert(0, '*'*len(line))
for line in grid:
print line
if i != (N-1):
print
Puedes ver como hago los cuadros en la función make_square. En make_grid se empieza a complicar un poco pero sigue entedible. Despues de grid = [] es donde puedes tener un gran y largo WTF.
Mi código fue aceptado :D