728x90
https://www.acmicpc.net/problem/10994
10994번: 별 찍기 - 19
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
www.acmicpc.net
| 1 초 | 256 MB | 7356 | 4864 | 3876 | 68.096% |
문제
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 차례대로 별을 출력한다.

제출 코드
def star(n, r, c):
leng = (4*n)-3
if leng == 1:
arr[r][c] = "*" # 중앙
return
for i in range(leng):
arr[r][c+i] = "*"
arr[r+i][c] = "*"
arr[r+(leng-1)][c+i] = "*"
arr[r+i][c+(leng-1)] = "*"
star(n-1, r+2, c+2)
N = int(input())
leng = (4*N)-3
arr = [[' ']*leng for _ in range(leng)]
star(N, 0, 0)
for line in arr:
print(*line, sep='')
1. 별을 찍을 곳을 2차원 배열로 미리 만들어둔다.
2. 별을 찍는 곳의 규칙을 찾아준다. 각 변의 길이는 (N*4) -3 의 규칙을 갖는다.
3. 네모 사이의 차이가 2라서 2만큼 더해주면서 별을 찍어줬다.

'알고리즘 > 백준' 카테고리의 다른 글
| [BOJ#9625] BABBA (0) | 2024.04.18 |
|---|---|
| [BOJ#6198] 옥상 정원 꾸미기 (1) | 2024.04.17 |
| [BOJ#30892] 상어 키우기 (0) | 2024.04.16 |
| [BOJ#25418] 정수 a를 k로 만들기 (0) | 2024.04.16 |
| [BOJ#4963] 섬의 개수 (0) | 2024.04.13 |