6 각형 그리드는 최근 2 차원 데이터에 대한 도전으로 상당히 인기가 있습니다. 그러나 똑같이 흥미로운 삼각 격자는 지금까지 크게 무시 된 것으로 보입니다. 오히려 간단한 도전으로 그것을 수정하고 싶습니다.
먼저 삼각형 격자를 어떻게 표현합니까? 다음 예제를 고려하십시오 (현재 올바른 다이어그램은 무시).
셀은 깔끔하게 규칙적인 격자에 떨어집니다 (일반 격자와의 차이점은 인접한 셀만 고려됩니다).
1234567
89abcde
fghijkl
mnopqrs
이제 오른쪽 다이어그램에서 볼 수 있듯이 삼각형 격자에는 세 개의 주요 축이 있습니다 : 가로 및 두 개의 대각선.
ASCII 그리드에서 이들을 강조 :
AVAVAVA
VAabcAV
fVAiAVl
mnVAVrs
도전
삼각형 격자 (왼쪽 위 모서리가 위쪽을 가리키는 삼각형)를 나타내는 직사각형 문자열이 제공됩니다. 가있는 대부분의 셀은 다음 .
과 같지만 정확히 두 개의 셀은 다음 #
과 같습니다.
....#
.#...
.....
두 #
개가 그리드의 세 축 중 하나를 따라 정렬 되는지 여부를 결정합니다 (즉, 위에 강조 표시된 세 방향 중 하나의 행에 있는지). 이 예에서 답은 "아니오"입니다.
STDIN (또는 가장 가까운 대안), 명령 행 인수 또는 함수 인수를 통해 입력을 받고 STDOUT (또는 가장 가까운 대안), 함수 리턴 값 또는 함수 (out) 매개 변수를 통해 결과를 출력하는 프로그램 또는 함수를 작성할 수 있습니다.
입력은 줄 바꿈 또는 기타 편리한 문자 또는 문자열 목록으로 구분 된 단일 문자열 일 수 있습니다. .
및 대신에 두 개의 (일관된) 인쇄 가능한 ASCII 문자를 사용할 수 있습니다 #
.
강조 표시된 셀이 정렬되면 출력이 참 값 이어야 하고 그렇지 않으면 거짓 값 이어야 합니다.
표준 코드 골프 규칙이 적용됩니다.
테스트 사례
Truthy 그리드 :
.#..#.
#
#
...........
...#.......
...........
...........
...........
.......#...
...........
...........
.......#...
...........
...........
...........
...#.......
...........
.#.........
...........
...........
...........
...........
.......#...
...........
...........
...#.......
...........
...........
...........
...........
.......#...
.........#.
...........
...........
...........
...........
...#.......
...........
...........
.......#...
...........
...........
...........
...........
...#.......
...........
.#.....#...
...........
...........
...........
거짓 그리드 :
#.....
.....#
.....#
#.....
...#.......
...........
...........
...........
...........
.......#...
...........
...........
...#.......
...........
...........
...........
...........
.........#.
.......#...
...........
...........
...........
...........
...#.......
...........
...........
.......#...
...........
...........
...........
...........
.#.........