본문 바로가기
코딩/백준

[C언어] 백준 BOJ 10991 별 찍기 17 - 2

by 김두루미 2023. 8. 5.
반응형

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

 

10992번: 별 찍기 - 17

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

www.acmicpc.net

문제설명

이전에 풀었던 별 찍기 17번 문제를 1년만에 다시 풀어보았습니다.

 

처음에 풀었던 방식은 별 하나가 출력되는 첫 번째 줄과 별이 꽉차게 출력되는 마지막 줄, 그리고 그 외의 줄을 따로 구분하여 출력했습니다.

 

앞의 별 찍기 15번과 별 찍기 16번을 풀면서 다시 코드를 보니 굳이 줄을 구분할 필요 없이 별 찍기 15번과 동일하되, 마지막 줄인 경우만 별이 무조건 모두 출력되도록 조건을 하나만 추가하면 해결할 수 있었습니다.

 

별을 출력하는 반복문의 조건식에 i == N-1 의 코드 한 줄만 추가하여 해결했습니다.

1년 전에 풀었던 별 찍기 17번 : https://kimcrane.tistory.com/43

 

코드(C언어)
#include<stdio.h>

int main(void)
{
    int i, j, N;
    
    scanf("%d", &N);
    
    for(i = 0; i < N; i++)
    {
    	for(j = 0; j < N-1-i; j++)
    	{
    		printf(" ");
		}
		
		for(j = 0; j < i*2+1; j++)
		{
			if(i == N-1 || j == 0 || j == (i*2))
			{
				printf("*");
			}
			else
			{
				printf(" ");
			}
		}
		
		printf("\n");
	}
    
    return 0;
}

별 찍기 17번 N이 5일 때 출력 결과
별 찍기 17번 N이 2일 때 출력 결과

반응형