알고리즘/백준 풀이

[백준] 2444번: 별 찍기 - 7 (파이썬/Python)

제로타이 2023. 2. 21. 14:33

 

목차

    개요

    2444번: 별 찍기 - 7 (acmicpc.net)

     

    2444번: 별 찍기 - 7

    첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

    www.acmicpc.net

    풀이

    문제 설명이 간략해서 좋구만. 이런 문제가 간단해보이지만, 인덱스에 조건을 걸거나 응용하는 류의 문제라서 막상 해보면 꽤 귀찮은 문제이기도 하다. 
    규칙을 찾는 것 자체도 코테를 하는데 있어서는 중요한 역량이기도 하고.

    보아하니 중간을 두고 대칭의 모양을 띄고 있으니 가운데가 0 정도의 값, 그리고 위 아래로 이산하면 될 것 같다. 그렇다면 abs를 써서 절대값을 활용하면 되겠다.
    별의 개수는 홀수이다. abs에 2를 곱하고 1을 빼는 식으로 하면 될 것 같다. 
    공백 수는 432101234이다. 절대값을 그대로 활용하면 될 것 같다.

    코드

    import sys
    
    N = int(sys.stdin.readline())
    for i in range(2 * N - 1):
        tmp = abs(i - N + 1)
        print(' ' * tmp + '*' * (2 *(N - tmp) - 1))