2441: 별 찍기 - 4

2022. 8. 14. 00:23카테고리 없음

브론즈3

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

 

2441번: 별 찍기 - 4

첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.

www.acmicpc.net

 

-결과

 

-코드

#include <stdio.h>

int main() {
	int n;
	scanf("%d", &n);
	for (int i = 0; i < n; i++) {
		for(int a=0;a<i;a++)
		{
			printf(" ");
		}
		for (int m=n-i; m > 0; m--) {
			printf("*");
		}
		printf("\n");
	}return 0;
}

 

-풀이

먼저 빈칸을 출력하고 *가 출력된 다음 다음줄로 이동하게 된다.

첫째 줄을 보면 빈칸이 0개, *이 5개, 다음줄이다.

둘째 줄을 보면 빈칸이 1개, *이 4개, 다음줄이다.

셋째 줄을 보면 빈칸이 2개, *이 3개, 다음줄이다.

넷째 줄을 보면 빈칸이 3개, *이 2개, 다음줄이다.

다섯째 줄을 보면 빈칸이 4개, *이 1개, 다음줄이다.

여기서 규칙을 찾을 수 있다.

빈칸은 i 번, * 은 n - i 번 출력되는 것을 알 수 있다. (n은 처음 입력받은 숫자이고 i는 0이다.)

이런 규칙을 토대로 for문을 작성한다.