H 트리 프랙탈 트리 구조 인 행으로 시작있다. 각 반복에서 T 분기가 모든 엔드 포인트에 추가됩니다. 이 과제에서는 매 초마다 H 트리 수준 의 ASCII 표현을 만들어야합니다 .
첫 번째 수준 에는 단순히 세 개의 하이픈 빼기 문자가 포함됩니다.
---
다음 레벨은 재귀 적으로 구성됩니다.
- 3 개의 공백 또는 선으로 구분하여 이전 레벨에서 2x2 복사본의 행렬을 만듭니다.
- 사본의 중심을 H의 형태로 ASCII 아트 라인으로 연결하십시오
-
. 수평선,|
수직선 및+
선이 서로 만나는 경우에 사용하십시오 .
두 번째 수준
-+- -+-
| |
+-----+
| |
-+- -+-
세 번째 수준
-+- -+- -+- -+-
| | | |
+--+--+ +--+--+
| | | | | |
-+- | -+- -+- | -+-
| |
+-----------+
| |
-+- | -+- -+- | -+-
| | | | | |
+--+--+ +--+--+
| | | |
-+- -+- -+- -+-
규칙
- 입력은 0 또는 1 인덱싱 된 위에서 설명한 실제 ASCII 트리가 아닌 ASCII 아트 H 트리의 레벨을 나타내는 정수 입니다.
- 출력이 유연합니다. 예를 들어, 결과를 인쇄하거나 줄 바꿈으로 구분 된 문자열, 각 줄의 문자열 목록 또는 2D 문자 배열을 반환 할 수 있습니다.
- 당신은 사용해야합니다
-
,|
,+
및 공백 문자. - 후행 공백과 최대 3 개의 후행 공백이 허용됩니다.
이것은 코드 골프입니다. 바이트 단위의 최단 답변이 이깁니다.
2
관련 : 더 작은 "H"에서 "H"만들기
—
nwellnhof