728x90
반응형

2447번: 별 찍기 - 10 (acmicpc.net)

 

2447번: 별 찍기 - 10

재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이

www.acmicpc.net

 

[ 백준 2447번 별찍기10 - 소스 코드 ]

#include <stdio.h>

void star_prn10(int,int,int);

int res[6561][6561];

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

void star_prn10(int x,int y,int n)
{
	if(n == 1)
	{
		res[x][y] = 1;
		return;
	}
	else
	{
		star_prn10(x,y,n/3);
		star_prn10(x+(n/3),y,n/3);
		star_prn10(x+2*(n/3),y,n/3);
		star_prn10(x,y+(n/3),n/3);
		star_prn10(x+2*(n/3),y+(n/3),n/3);
		star_prn10(x,y+2*(n/3),n/3);
		star_prn10(x+(n/3),y+2*(n/3),n/3);
		star_prn10(x+2*(n/3),y+2*(n/3),n/3);
	}
}
반응형
Posted by 명문코딩컴퓨터
,