때로는 낙서 할 때 사각형을 그리고 모서리 중 하나에서 대각선으로 시작한 다음 사각형의 한면을 칠 때마다 "반사"하여 선을 추적합니다. 직사각형의 다른 모서리에 닿을 때 까지이 작업을 계속합니다 (내 직사각형의 종횡비가 비이성적이지 않기를 바랍니다). 이것은 레이저의 경로를 상자로 추적하는 것과 같습니다. ASCII 아트를 사용하여 결과를 생성해야합니다.
예를 들어 width 5및 height 상자를 고려하십시오 3. 우리는 항상 왼쪽 상단에서 시작합니다. #마크 상자의 경계. 너비와 높이는 내부 치수를 나타냅니다.
####### ####### ####### ####### ####### ####### #######
#\ # #\ # #\ \# #\ /\# #\ /\# #\/ /\# #\/\/\#
# \ # # \ /# # \ /# # \/ /# # \/ /# #/\/ /# #/\/\/#
# \ # # \/ # # \/ # # /\/ # #\/\/ # #\/\/ # #\/\/\#
####### ####### ####### ####### ####### ####### #######
도전
상자의 (양의) 너비와 높이가 주어지면 레이저 추적의 최종 결과를 생성해야합니다. STDIN (또는 가장 가까운 대안), 명령 줄 인수, 함수 인수를 통해 입력을 받고 STDOUT (또는 가장 가까운 대안)을 통해 또는 함수 반환 값 또는 인수를 통해 결과를 출력하는 프로그램 또는 함수를 작성할 수 있습니다.
편리한 목록, 문자열 또는 숫자 형식을 입력에 사용할 수 있습니다. 출력은 단일 문자열이어야합니다 (STDOUT으로 인쇄하지 않는 한 점진적으로 진행할 수 있음). 이것은 또한 높이를 먼저, 너비를 두 번째로 취할 수 있음을 의미합니다-답에 정확한 입력 형식을 지정하십시오.
출력 라인에 선행 또는 후행 공백이 없어야합니다. 선택적으로 단일 후행 줄 바꿈을 출력 할 수 있습니다.
당신은 공간을 사용합니다 /, \그리고 #정확히 같은 표시된 테스트 케이스를 재현.
테스트 사례
2 2
####
#\ #
# \#
####
3 2
#####
#\/\#
#/\/#
#####
6 3
########
#\ /#
# \ / #
# \/ #
########
7 1
#########
#\/\/\/\#
#########
1 3
###
#\#
#/#
#\#
###
7 5
#########
#\/\/\/\#
#/\/\/\/#
#\/\/\/\#
#/\/\/\/#
#\/\/\/\#
#########
22 6
########################
#\ /\ /\ /\ /\ /\ #
# \/ \/ \/ \/ \/ \#
# /\ /\ /\ /\ /\ /#
#/ \/ \/ \/ \/ \/ #
#\ /\ /\ /\ /\ /\ #
# \/ \/ \/ \/ \/ \#
########################
X교차로에 필요한 여러 출발점을 고려하고있었습니다 . 아마 다음 번에. ;)