도시 계획 프로젝트의 일환으로 건축가의 의견을 수렴하여 도시 스카이 라인을 표시하는 프로그램이나 기능을 만들 수 있습니다. 프로젝트는 시작 단계에만 있으므로 매우 대략적인 스케치로 충분합니다. 물론 가장 쉬운 방법은 단순히 ASCII 아트로 스카이 라인을 그리는 것입니다.
모든 건물은 강 옆에 있으므로 모두 정렬되어 있습니다. 건축가는 각 건물의 높이를 입력으로 제공하며 코드에는 스카이 라인이 표시되어야합니다.
아키텍트의 입력은 정수 또는 반정 수입니다. 숫자가 정수인 경우 건물에는 평평한 지붕이 있고 반정 수는 지붕이 삐걱 거리게됩니다. 0은 평평한 접지입니다. 건물 벽의 간격은 3 자이며 0은 1 자입니다. 인접한 건물은 벽을 공유합니다.
출력에 대한 자세한 내용과 설명은 아래 예를 참조하십시오.
N = 3
___
| |
| |
|___|
N = 3.5
_
/ \
| |
| |
|___|
N = 6
___
| |
| |
| |
| |
| |
|___|
n = 0
_
입력 예 : 3 3.5 0 2
_
___ / \
| | | ___
| | | | |
|___|___|_|___|
입력 예 : 0 0 2.5 3 0 4 1
___
_ ___ | |
/ \| | | |
| | | | |___
__|___|___|_|___|___|
루이빌 ,0 2 1 3.5 0 4 2 4 2 4 6 1 6 0 5 1
___ ___
| | | | ___
_ ___ ___ ___| | | | | |
/ \ | | | | | | | | | | |
___ | | | |___| |___| | | | | | |
| |___| | | | | | | | |___| | | |___
_|___|___|___|_|___|___|___|___|___|___|___|___|_|___|___|
사용되는 ASCII 문자는 개행, 공백 및 /\_|
(코드 포인트 10, 32, 47, 92, 95, 124)입니다.
규칙 :
- 모든 숫자에 2를 곱하여 정수만 입력으로하는 프로그램을 만드는 것은 선택 사항입니다. 따라서을 복용하는 대신
3 3.5 2
프로그램이 걸릴 수 있습니다6 7 4
. 두 번째 입력 형식을 선택하면 6을 입력하면 3 층 건물이되며 7은 지붕이 뾰족한 3 층 건물이어야합니다. - 출력은 위에서 설명한대로 정확하게 이루어져야하지만 후행 공백과 줄 바꾸기는 정상입니다.
- 입력의 정확한 형식은 선택 사항입니다. 귀하의 언어에서 가장 좋은 것이 무엇이든.
- 건축가가 결과를 볼 수 있도록 결과가 화면에 표시되어야합니다.
- 적어도 하나의 정수가 제공되고 유효한 입력 만 제공된다고 가정 할 수 있습니다.
이것은 codegolf이므로 바이트 단위의 가장 짧은 코드가 이깁니다.