이 시리즈의 두 번째, 세 번째는 노란색 나무로 분기 된 두 개의 도로입니다 (3 부).
이것은 이전의 도전 과제 인 노란 나무로 갈라진 두 개의 도로 (1 부)를 기반으로 합니다. 그것은 꽤 잘 받아 들여졌지만 꽤 사소했습니다 (52 바이트의 Java 답변!) 그래서 더 복잡한 것을 만들었습니다 ...
영감
이 도전은 Robert Frost의 유명한 시인 "The Road Not Taken"에서 영감을 얻었습니다.
두 개의 도로가 노란 나무로 갈라졌고,
죄송합니다. 둘 다 여행 할 수 없었습니다.
그리고 한 명의 여행자가되어서 오랫동안 서있었습니다.
그리고
덤불에서 구부러진 곳 까지 가능한 한 아래를 내려다 보았습니다 .... 2 단락이 잘립니다 ...
나는 한숨을 쉬며
어딘가에 이것을 말해 줄 것이다 .
두 개의 도로가 나무로 갈라졌고, 나는 –
덜 여행 한 길을 택했다.
그리고 그것은 모든 차이를 만들었다.
두 번째 행부터 마지막 행까지 주목하십시오 I took the one less traveled by,
. 당신의 목표는 문자열 입력에서 가장 적게 여행 한 도로를 찾는 것입니다. 도로가 덜 이동하기 위해 어떤 방향으로 회전해야 하는지를 알려주는 서로 다른 두 값 중 하나를 출력해야합니다. 도로 분기점 (육각형의 흔적이 숫자로 바))이 교차점에 있습니다. 여기에는 숫자로 구성된 2 개의 경로가 있습니다. 숫자가 가장 낮은 경로는 가져 가지 않은 도로입니다. 길을 타지 않은 길은 길은 더 길지만 길은 더 작을 수 있습니다. 경로에 "왼쪽"또는 "오른쪽"을 인쇄하는 프로그램의 예제 / 테스트 사례는 다음과 같습니다.
1 2
1 2
1 2
#
#
#
left (3 < 6)
1 2
2 2
1 1
#
#
#
left (4 < 5)
12 2
11 2
1 1
#
#
#
right (6 > 5)
99 989
99 89
99 99
99 99
#
#
#
#
left (72 < 79)
1111 1110
001 111
11 11
11 11
#
##
##
##
left (9 < 10) (Note: 1111 is interpreted as 1+1+1+1=4, not 1111=1111)
1 1
0 1
1 1
1 1
1 1
1 1
1 1
#
#
#
#
#
left (6 < 7)
1 1
0 1
1 1
1 1
1 1
1 1
1 1
#
#
#
#
#
left (6 < 7)
가정하고 기억해야 할 것들
- 항상 2 개의 경로가 있습니다. 그 이상도 이하도 아닌.
- STDIN에서 한 번에 한 줄, LF 문자를 포함하는 문자열 또는 리터럴 백 슬래시 및 n을 포함하는 문자열을 입력 할 수 있습니다. 다른 방법으로 입력이 필요한 경우 의견에 승인을 요청하십시오.
- 유효하지 않은 입력 또는 묶인 경로에 대해 걱정할 필요가 없습니다. 그것들은 프로그램 / 기능에 입력되지 않을 것입니다.
- 입력은 언어의 문자열 제한보다 작은 너비 또는 높이의 길이 일 수 있습니다.
#
같은 줄에 a 와 숫자 가 없습니다 .- 경로의 모든 숫자는 0에서 9 사이의 양의 정수입니다.
- 후행 줄 바꿈이있는 입력 또는 출력이 허용됩니다.
- 예제는 아래 JS ES6 답변을 참조하십시오 .
- 두 경로 사이에는 항상 최소 1 개의 공간이 있어야합니다.
- 두 경로는 각지도마다 높이가 항상 같지만 다른지도에서는 다를 수 있습니다.
- 특정 테스트 사례에 대해 혼란 스러우면 알려주십시오.
- 1111은 1111 = 1111이 아니라 1 + 1 + 1 + 1 = 4로 해석됩니다. 지도는 임의의 길이가 아닌 일련의 한 자리 숫자입니다.
- 이것은 code-golf 이므로 바이트 단위의 최단 답변이 이깁니다!
- 금지 된 표준 허점
이 도전에 대해 궁금한 점이 있으면 의견과 행운을 빌어주세요!
let answers = $('div > h1').map(function(){return $(this).clone().children(':not(a)').remove().end().text().replace(/\s+/g,' ').trim()}).get();answers.splice(0, 1);answers.join('\n');
$("div > h1").map(function(){return $(this).text()}).get().join("\n");
당신의 콘솔 에 붙여 넣어 모든 답변과 바이트 수를 볼 수 있습니다 !