이 도전에서는 풍선으로 채워진 물의 양을 고려하여 물 풍선의 ASCII 아트를 표시해야합니다.
| __||__ |
| / # #\ |
| |######| |
| |######| |
| |######| |
| |######| |
| |######| |
| \######/ |
| |
| |
+----------+
풍선을 그리는 방법
크기의 풍선을 표시하려면 n
다음 단계를 따르십시오 (참고 : 나누기 기호 ( /
)가 사용될 때마다 정수 나누기, 내림차순을 나타냄).
|
왼쪽과 오른쪽에 10 개의 수직 막대 ( )-
, 아래쪽에 10 개의 대시 ( ),+
왼쪽과 오른쪽 하단 모서리에 더하기 부호 ( ) 로 구성된 컨테이너 를 그 립니다. 이것은 모든 것을 12x11로 만들고 "내부"10x10을 만듭니다.| | | | | | | | | | | | | | | | | | | | +----------+
상단 행 가운데에 가운데에 두 개의 수직 막대 (풍선의 개구부 )를 그리고 양쪽에
n/2
밑줄 (_
)을 붙입니다 ( 이 예에서는n
5).| __||__ | | | | | | | | | | | | | | | | | | | +----------+
이 맨 위 행을 둘러싸는 슬래시 (
/
)와 백 슬래시 ( )를 하나씩\
아래에 그리 십시오.| __||__ | | / \ | | | | | | | | | | | | | | | | | +----------+
그리기
n
동일하게 이격 된 수직 바의 행을하고 (여전히 동일하게 이격) 슬래시 슬래시의 쌍 중 하나 개의 행 :| __||__ | | / \ | | | | | | | | | | | | | | | | | | | | | | \ / | | | | | +----------+
해시 기호 (
#
)로 표시되는 물로 풍선을 채 웁니다 . 가장 낮은 줄에서 시작하여 위로 진행하십시오. 행이 완전히 채워지지 않은 경우 원하는 위치에 해시 마크를 배치 할 수 있습니다 (아래 예에서는 임의로 배치되지만 원하는 경우 왼쪽에 모두 배치 할 수 있음).| __||__ | | / # #\ | | |######| | | |######| | | |######| | | |######| | | |######| | | \######/ | | | | | +----------+
최대 값 n
은 7이고 최소값은 0입니다.
입력
입력은 정수입니다 i
이며,이 값은 그려야하는 해시 마크 (물)의 양입니다.
절대로 2보다 작거나 100보다 클 수 없습니다.
산출
출력은 해시 마크 (물 단위)를 n
포함하는 크기의 풍선이어야합니다. i
여기서 물 단위를 n
보유 할 수있는 가장 작은 크기입니다 i
. 이후로는 i
항상 2 이상이어야합니다n
항상 0 이상이 될 것입니다.
풍선을 그릴 수있는 최대 크기는 n
= 7입니다. 크기 7 풍선이 지정된 양의 물에 맞지 않으면 풍선이 나타납니다.
| |
| |
|## # ###|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
+----------+
(위의 입력 i
= 76에 대한 출력이어야합니다. 튀어 나오지 않은 풍선과 마찬가지로 맨 위 줄에 물 6 개가 추가로 배열 될 수 있습니다.)
테스트 사례
테스트 케이스를 모두 가질 수 있는데 왜 하나의 테스트 케이스가 있습니까?
다음 i
은 2에서 100까지 의 모든 입력에 대한 애니메이션 GIF입니다 .
채점
이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다.