2443: 별 찍기 - 6

2022. 8. 17. 19:25C언어/백준

브론즈 3

https://www.acmicpc.net/problem/2443

 

2443번: 별 찍기 - 6

첫째 줄에는 별 2×N-1개, 둘째 줄에는 별 2×N-3개, ..., N번째 줄에는 별 1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다.

www.acmicpc.net

 

-결과

 

-코드

#include <stdio.h>

int main() {
	int n;
	scanf("%d", &n);
	for (int i = n; i > 0; i--) {
		for (int j = n-i; j > 0; j--) {
			printf(" ");
		}
		for (int k = 2 * i - 1; k > 0; k--) {
			printf("*");
		}
		printf("\n");
	}
    return 0;
}

 

-풀이

빈칸과 *을 나눠서 출력해야 한다. 예제를 살펴보면,

빈칸은 첫째 줄에 0개, 둘째 줄에 1개, 셋째 줄에 2개, 넷째 줄에 3개, 다섯째 줄에 4개가 출력된다.

 *은 첫째 줄에 9개, 둘째 줄에 7개, 셋째 줄에 5개, 넷째 줄에 3개, 다섯째 줄에 1개가 출력된다.

그리고 빈칸을 먼저 for문으로 작성해서 출력하고, *는  그 다음에 for문으로 작성해서 출력해야 한다.

그러기 위해서 빈칸은 i--dlrh, n-i로 설정한 다음 출력하게 하고, *는 2*i -1 번 출력하도록 for문을 작성한다.

 

'C언어 > 백준' 카테고리의 다른 글

2455: 지능형 기차  (0) 2022.08.25
2445: 별 찍기 - 8  (0) 2022.08.17
2444: 별 찍기 - 7  (0) 2022.08.13
1574: 공  (0) 2022.08.02
1284: 집 주소  (0) 2022.08.02