【蓝桥杯训练】第三天1263
1263
小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。
为了便于比对空格,所有的空白位置都以句点符来代替。
要求输入两个整数m n,表示笔的宽度,X的高度。
输入
输入存在多组数据
每组测试数据输入一行,包含两个整数,用空格分开
(0<m<n, 3<n<1000, 保证n是奇数)
输出
要求输出一个大X
样例输入 Copy
3 9
4 21
样例输出 Copy
注意
无
算法
- 采用数组数字对应符号
- 可以使用对称简化,本题我第一遍遍历修改好数组
- 第二遍遍历输出图案
题解
def display(data):
for i in range(len(data)):
for j in range(len(data[i])):
if data[i][j]:
print('*',end='')
else:
print('.',end='')
print()
while True:
m, n = map(int,input().split())
array = [[0 for i in range(m+n-1)] for i in range(n)]
v = [1 for i in range(m)]
for i in range(n):
array[i][i:i+m] = v
array[i][n-1-i:n-1-i+m] = v # 左右对称
display(array)
while True:
print(f(input()))
纯粹于当下,执着于理想。