#include <stdio.h>

void star_prn11(int,int,int);

int res[3072][6144];

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

void star_prn11(int x,int y,int n)
{
	int i;
	if(n == 3)
	{
		for(i = 0;i < 5;i++)
		{
			res[x][y+i] = 1;
		}
		res[x-1][y+1] = 1;
		res[x-1][y+3] = 1;
		res[x-2][y+2] = 1;
		return;
	}
	else
	{
		star_prn11(x,y,(n/2));
		star_prn11(x-(n/2),y+(n/2),(n/2));
		star_prn11(x,y+n,(n/2));
	}
}

2448번: 별 찍기 - 11 (acmicpc.net)

 

2448번: 별 찍기 - 11

첫째 줄에 N이 주어진다. N은 항상 3×2k 수이다. (3, 6, 12, 24, 48, ...) (0 ≤ k ≤ 10, k는 정수)

www.acmicpc.net

 

[ 백준 2448번 - 별찍기11 소스 코드 ]

 

'백준 문제풀이' 카테고리의 다른 글

백준 13015번 - 별찍기 23  (0) 2021.12.08
백준 10993번 - 별찍기 18  (0) 2021.12.08
백준 2447번 - 별찍기10  (0) 2021.12.01
백준 14002 - 가장 긴 증가하는 부분 수열4  (0) 2021.11.15
백준 2605번 줄세우기  (0) 2021.10.20
Posted by 명문코딩컴퓨터
,