解题思路:找规律即可
注意事项:print()只换一行但是print('\n')会换二行,注意这点否则会格式错误
参考代码:
n = int(input())
for count in range(n) :
a, b = map(int, input().split())
for i in range(b) :
if i == 0 :
for j in range(int((a - 1) / 2)) :
print((' ' * j) + 'X' + (' ' * (a - 2 - 2 * j)) + 'X' + (' ' * j))
print((' ' * int((a - 1) / 2) + 'X' + (' ' * int((a - 1) / 2))))
for k in range(int((a - 1) / 2) - 1, -1, -1) :
print((' ' * k) + 'X' + (' ' * (a - 2 - 2 * k)) + 'X' + (' ' * k))
else :
for j in range(1, int((a - 1) / 2)) :
print((' ' * j) + 'X' + (' ' * (a - 2 - 2 * j)) + 'X' + (' ' * j))
print((' ' * int((a - 1) / 2) + 'X' + (' ' * int((a - 1) / 2))))
for k in range(int((a - 1) / 2) - 1, -1, -1) :
print((' ' * k) + 'X' + (' ' * (a - 2 - 2 * k)) + 'X' + (' ' * k))
print()
0.0分
2 人评分