숫자 n이 있다고 가정합니다. 별표가 있는 다이아몬드 패턴을 2n-1선으로 그려야 합니다. 처음 1에서 n개의 줄에는 1에서 n개의 별표가 포함되어 있으며 다음에는 n-1에서 1로 감소합니다.
따라서 입력이 n =5와 같으면 출력은
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
* 이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 1~n 범위의 i에 대해 수행
-
- 블록 '*'을 i번 인쇄하고 각 줄에 (2*n-1)자 공백이 있는 가운데 정렬된 형식으로 인쇄합니다.
- n-1에서 0 사이의 i에 대해 1 감소, 수행
-
- 블록 '*'을 i번 인쇄하고 각 줄에 (2*n-1)자 공백이 있는 가운데 정렬된 형식으로 인쇄합니다.
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다.
def solve(n):
for i in range(1,n+1):
print(('* '*i).center(2*n-1))
for i in range(n-1,0, -1):
print(('* '*i).center(2*n-1))
n = 10
solve(n) 입력
10
출력
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*