Python 알고리즘

백준 13015번 파이썬 풀이: 별 찍기 - 23

윤상ol 2020. 9. 24. 17:07
반응형

백준 13015번 별 찍기 - 23

 

알고리즘 분류: 구현

 

링크: www.acmicpc.net/problem/13015

 

 

13015번: 별 찍기 - 23

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

www.acmicpc.net

문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

입력

첫째 줄에 N(2 ≤ N ≤ 100)이 주어진다.

출력

규칙대로 별을 출력한다.

 

 

문제 파악

 

문제의 규칙성을 찾아서 구현하는 전형적인 별 찍기 문제 중 하나이다.

 

 

코드

# 13015번

n = int(input())

for i in range(1, n + 1):
    if i == 1 or i == 2 * n:
        print("*" * n + " " * (2 * (n - 1) - 1) + "*" * n)
    elif i != n:
        print(" " * (i - 1) + "*" + " " * (n - 2) + "*" + " " * (2 * (n - i) - 1) + "*" + " " * (n - 2) + "*")
    else:
        print(" " * (i - 1) + "*" + " " * (n - 2) + "*" + " " * (2 * (n - i) - 1) + " " * (n - 2) + "*")

for i in range(n, 0, -1):
    if i == 1 or i == 2 * n:
        print("*" * n + " " * (2 * (n - 1) - 1) + "*" * n)
    elif i != n:
        print(" " * (i - 1) + "*" + " " * (n - 2) + "*" + " " * (2 * (n - i) - 1) + "*" + " " * (n - 2) + "*")
반응형