문제 링크: https://www.acmicpc.net/problem/2447
백준 재귀 5단계 - 2447번 별 찍기 - 10를 풀어보았다.
풀이: 별 무늬를 찍는 재귀함수를 만들면 된다.
파이썬의 경우, 입출력 시간을 빠르게 하기 위해 input과 print를 바꾸었다.
C++
#include <iostream>
using namespace std;
void sol(int a,int b, int c)
{
if((a/c)%3==1&&(b/c)%3==1) printf(" ");
else
{
if(c/3==0) printf("*");
else sol(a,b,c/3);
}
}
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++) sol(i,j,n);
printf("\n");
}
}
Python
import sys
input = sys.stdin.readline
print = sys.stdout.write
def star(a,b,c):
if a//c%3==1 and b//c%3==1:
print(" ")
else:
if c//3==0: print("*")
else: star(a,b,c//3)
n=int(input())
for i in range(n):
for j in range(n):
star(i,j,n)
print("\n")
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
블랙잭 풀이 (0) | 2023.01.06 |
---|---|
하노이 탑 이동 순서 풀이 (0) | 2023.01.05 |
알고리즘 수업 - 병합 정렬 1 풀이 (0) | 2023.01.05 |
재귀의 귀재 풀이 (0) | 2023.01.05 |
피보나치 수 5 풀이 (0) | 2023.01.05 |