참고 : SE 글꼴 이상한 점 때문에 문자열 아트가 끔찍할 수 있습니다. : P :(
사각형의 모서리를 나타내는 4 개의 튜플 목록이 제공되면 반투명 사각형을 순서대로 그립니다.
이 문제를 해결하려면 왼쪽 상단 모서리에서 가장 작은 좌표를, x 축은 오른쪽으로, y 축은 아래쪽으로 증가시켜야합니다.
4 개의 튜플 (x0, y0, x1, y1)
또는 직사각형의 왼쪽 상단 및 오른쪽 하단 모서리의 좌표 쌍을 (x0, x1, y0, y1)
나타냅니다 (x, y)
(직사각형의 두 형식 중 하나를 선택할 수 있지만 일관성이 있어야합니다)
"반투명 사각형"이란 무엇입니까? 이 도전을 위해, 당신은 공백 문자와 대부분의 상자 그리기 문자를 사용할 것입니다; 특히, "굵게"문자를 포함하여 사각형을 그리는 데 사용되는 모든 문자. 반투명 사각형을 그리면 먼저 차지하는 공간의 모든가는 선이 사라지고 모든 굵은 선이 얇아지고 직사각형 자체가 굵은 선으로 그려집니다.
예를 들어, 왼쪽 위와 오른쪽 아래에 사각형을 그리면 다음과 같이 보일 수 있습니다.
┏━━━━┓
┃ ┃
┃ ┃
┃ ┏━━╇━━┓
┃ ┃ │ ┃
┗━╉──┘ ┃
┃ ┃
┃ ┃
┗━━━━━┛
명확하게하기 위해 사각형 내에서 모든 선에 대해 선이 밝게 (굵게-> 얇게-> 없음) 표시됩니다 (예 : 아래쪽을 향하는 선은 위쪽 가장자리에는 영향을 받지만 아래쪽 가장자리에는 영향을 미치지 않음).
테스트 사례
각 테스트 케이스에 대해 몇 줄의 입력 라인이 제공되고 그 뒤에 유니 코드 아트가 제공됩니다.
0 0 5 5
5 5 10 10
3 3 7 7
2 2 8 8
┏━━━━┓
┃ ┃
┃ ┏━━╇━━┓
┃ ┃┌─┴─┐┃
┃ ┃│ │┃
┗━╉┤ ├╊━┓
┃│ │┃ ┃
┃└─┬─┘┃ ┃
┗━━╈━━┛ ┃
┃ ┃
┗━━━━┛
14 5 15 9
13 2 15 16
6 4 15 11
┏━┓
┃ ┃
┏━━━━━━╇━┫
┃ │ ┃
┃ │ ┃
┃ │ ┃
┃ │ ┃
┃ │ ┃
┃ │ ┃
┗━━━━━━╈━┫
┃ ┃
┃ ┃
┃ ┃
┃ ┃
┗━┛
6 8 10 11
15 12 16 16
14 10 16 16
9 1 15 15
┏━━━━━┓
┃ ┃
┃ ┃
┃ ┃
┃ ┃
┃ ┃
┃ ┃
┏━━╉┐ ┃
┃ ┃│ ┃
┃ ┃│ ┌╊┓
┗━━╉┘ │┃┃
┃ │┠┨
┃ │┃┃
┃ │┃┃
┗━━━━╈┩┃
┗┷┛
규칙
- 입력은 4 개의 튜플 목록에 적합한 형식 일 수 있습니다. 입력 한 인덱스 또는 (즉, 왼쪽 위 코너 중 하나가 될 수 있습니다 축을 따라 제로 인덱스 일 수있다
(0, 0)
,(0, 1)
,(1, 0)
,(1, 1)
. - 출력은 설명 된대로 유니 코드 기술이어야합니다. 출력에는 선행 줄 바꿈이 없을 수 있으며 마지막 줄 다음에 줄 바꿈 줄이 최대 하나만있을 수 있습니다. 이 문제의 목적을 위해 후행 공백은 무시됩니다.
코드 포인트
대담하고 가벼운 수평 및 수직 파이프의 범위에 [U+2500, U+2503]
있습니다. 다양한 코너 파이프가 범위 내에 [U+250C, U+251C)
있습니다. 세 팔 파이프의 범위에 [U+251C, U+253C)
있습니다. 네 팔 파이프의 범위에 [U+253C, U+254C)
있습니다. 내 프로그램에서 찾을 수있는 나머지 파이프는 실제로 사용되지 않습니다.
Typically this uses only 95 printable (from a total of 128) characters defined by the ASCII Standard from 1963.