In Python, i want to print concentric square for that i have written a code but i am not getting desired output

前端 未结 4 2059
伪装坚强ぢ
伪装坚强ぢ 2021-01-16 20:01

input n taken here

n=int(input())

answer=[[1]]

for i in range(2, n+1):

    t=[i]*((2*i)-3)
    answer.insert(0, t)
    answer.append(t)
    for a in answ         


        
4条回答
  •  温柔的废话
    2021-01-16 20:20

    Here is the solution to your problem with the right algorithm and output:

    n = int(input())
    
    answer = []
    k = 0
    for i in range(n):
        temp = [(n-k) for _ in range(2*n - 1)]
        side = [x for x in range(n, n-k, -1)]
        answer.append(side + temp[k:len(temp) - k] + side[::-1])
        k += 1
    
    k = 2
    for i in range(n-1):
        answer.append(answer[n-k])
        k += 1
    
    for a in answer:
        print(''.join(map(str, a)), end='\n\n')
    

提交回复
热议问题