관리 메뉴

솜씨좋은장씨

[BaekJoon] 23794번 : 골뱅이 찍기 - 정사각형 (Python) 본문

Programming/코딩 1일 1문제

[BaekJoon] 23794번 : 골뱅이 찍기 - 정사각형 (Python)

솜씨좋은장씨 2022. 12. 4. 12:51
728x90
반응형

코딩 1일 1문제! 오늘의 문제는 백준의 골뱅이 찍기 입니다.

 

23794번: 골뱅이 찍기 - 정사각형

첫째 줄부터 $N+2$번째 줄까지 차례대로 골뱅이를 출력한다.

www.acmicpc.net

👨🏻‍💻 문제 풀이

N 을 입력 받으면 정해진 규칙에 따라 골뱅이를 직사각형 모양으로 찍는 문제입니다.

 

먼저 N+2 개의 ' '(공백) 문자열을 가진 리스트를 하나 만들어 줍니다.

answer = ['' for _ in range(N+2)]

여기서 첫번째와 마지막 위치에 N+2 개만큼의 @ 를 이어붙인 문자열을 넣어줍니다.

마지막 위치는 -1 인덱스로 접근합니다.

answer[0] = answer[-1] = ( N + 2 ) * "@"

처음과 마지막 사이에는 @와 @ 사이에 N개의 공백이 들어있는 문자열을 만들어 넣어줍니다.

문자열을 만드는데에는 f-string 을 활용하였습니다.

for idx in range(1, N+1):
    answer[idx] = f"@{' '* N}@"

마지막으로 이 정답 리스트를 \n ( 개행문자 ) 로 join 하여 정답 문자열로 만들어주면 끝!

 

전체 코드는 아래를 참고해주세요.

👨🏻‍💻 코드 ( Solution )

def golbange_print_rectangle(N):
    answer = ['' for _ in range(N+2)]
    answer[0] = answer[-1] = ( N + 2 ) * "@"
    
    for idx in range(1, N+1):
        answer[idx] = f"@{' '* N}@"
        
    return "\n".join(answer)


if __name__ == "__main__":
    N = int(input())
    
    print(golbange_print_rectangle(N=N))
 

GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

Comments