📙
python-algorithm
  • 🖋️알고리즘 풀이 저장소
  • 이론
    • BFS & DFS 이론
    • 다익스트라 이론
    • 최소신장트리(크루스칼) 이론
    • 백트래킹 이론
  • 유형
    • 정렬
    • 순열과 조합
    • 탐색
    • 이분 탐색
    • SHA-256
    • 투 포인터
    • 피보나치
    • Z 재귀함수
    • 재귀함수
    • 친구 네트워크
    • 찾기
    • 큐
    • 스택 수열
    • 기하학
    • 트리 순회
    • 고급 탐색
    • BFS & DFS 알고리즘
    • 다익스트라 알고리즘
    • 최소신장트리(크루스칼) 알고리즘
    • 동적 프로그래밍
    • 그리디 알고리즘
    • 백트래킹 알고리즘
  • 기타
    • 베스트셀러
    • 성
    • 키 로거
    • 음계
Powered by GitBook
On this page
  • 백준 2447번 : 별 찍기 - 10
  • 1. 풀이
  1. 유형

재귀함수

#재귀

백준 2447번 : 별 찍기 - 10

1. 풀이

num = int(input())

def star(n):
  if n == 1: 
    return ['*'] 

  stars = star(n//3) 
  L = [] # 별을 출력할 리스트

  for s in stars: 
    L.append(s*3) # 상 구간
  for s in stars: 
    L.append(s+' '*(n//3)+s) # 중 구간
  for s in stars: 
    L.append(s*3) # 하 구간
		
  return L

print('\n'.join(star(num)))

아래는 star(3)의 결과값

['***', '* *', '***']

아래는 star(9)의 결과값

['*********', '* ** ** *', '*********', '***   ***', '* *   * *', '***   ***', '*********', '* ** ** *', '*********']
PreviousZ 재귀함수Next친구 네트워크

Last updated 3 years ago