https://www.acmicpc.net/problem/10992
10992번: 별 찍기 - 17
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
www.acmicpc.net


- 문제
- 사진과 같이 별을 피라미드 모양으로 출력하면 됩니다. 차이점은 피라미드 내부는 비어있어야 하는 점입니다.
- 풀이
- Line 9는 전체 층의 개수를 세기 위한 for문입니다. n층을 입력하면 총층의 개수는 n입니다.
- Line 11은 별을 출력하기 전에 공백을 출력하기 위한 for문입니다. n을 입력했을 때 공백의 개수는 위층부터 차례대로 n-1, n-2, n-3, ... , 0개가 됨으로. 이를 점화식으로 만들면 n - i개가 됩니다.
- Line 15 ~ 35는 별을 출력하기 위한 코드입니다. 우선 예제를 보면 각 층마다 별 공백 포함하여 2n - 1개만큼 출력되어야 합니다. 맨 아래층일 때 즉, i == n일 때 (Line 15) 공백은 없고 별은 2n - 1개만큼 출력됩니다. 그 외의 경우(else) 별과 공백을 같이 출력해야 합니다.
- 별은 맨 처음과 마지막에만 한 번씩 출력하면 되니 if문을 사용하여 a == 1이거나 혹은 a == 2 *i - 1일 때를 별을 출력하고 그 외에는 공백을 출력하면 됩니다.
본 게시물은 제가 공부한 내용을 올린 글이라 내용이 틀리거나 오류가 있을 수도 있습니다. 만약 그럴 시 jaewonahn1234@gmail.com으로 피드백해주시면 감사하겠습니다.
'SW > 백준' 카테고리의 다른 글
[백준] 10809번: 알파벳 찾기 (C) (0) | 2022.01.04 |
---|---|
[백준] 10808번: 알파벳 개수 (C) (0) | 2022.01.04 |
[백준] 10991번: 별 찍기 - 16 (C) (0) | 2021.12.30 |
[백준] 2522번: 별찍기 - 12 (C) (0) | 2021.12.26 |
[백준] 2446번: 별찍기 - 9 (C) (0) | 2021.12.26 |