우리는 모두 많은 운동이 신체의 절반에만 영향을 미치므로 각 측면마다 한 번씩 두 번 수행해야한다는 것을 알고 있습니다. 이러한 연습에는 왼쪽과 오른쪽에 각각 하나씩 두 가지가 있습니다. 그러나 양측 연습이 동일한 순서로되어있는 한 두 상대방을 연속적으로 실행할 필요는 없습니다. 운동 프로그램에서 측면을 전환 할 수도 있지만, 한쪽과 다른 쪽을 시작하는 것은 합리적이지 않습니다.
도전
운동 부분은 두 번째 절반 부인 전반 정수와 같은 순서로 구성되어 비제로 정수들의리스트이고, 각각의 절반의 정수의 부호는 동일하다. 운동 부분의 상반기 부호는 앞면 입니다.
운동 세트는 함께 연결된 동일한 선단 측과 0 개 이상의 운동 부이다.
입력으로 0이 아닌 정수 목록이 주어지면 그것이 운동 세트인지 판별하십시오. 정수가 반드시 고유하지는 않습니다. 목록의 길이가 반드시 짝수는 아닙니다.
솔루션은 표준 허점을 사용하지 않을 수 있습니다 . 출력에 대해 서로 다른 두 가지 일관된 값을 사용할 수 있습니다. 이것은 code-golf 이므로 가장 짧은 솔루션이 승리합니다.
예
[-5, -1, -7, -6, -5, 5, 1, 7, 6, 5]
운동 부분의 예입니다. 전반부는 [-5, -1, -7, -6, -5]
이고 마지막 반은 [5, 1, 7, 6, 5]
입니다. 전반부의 각 정수는 무시됩니다. 또한 전반부의 정수는 모두 같은 부호입니다. 이 운동 부분의 주요 측면은 -1
입니다.
[3, 6, 5, -3, -6, -5, 1, 6, 4, 3, -1, -6, -4, -3]
운동 세트의 예입니다. 그것의 개별 운동 부분은 [3, 6, 5, -3, -6, -5]
및이며 [1, 6, 4, 3, -1, -6, -4, -3]
, 둘 다 앞선 측면이 1
있습니다.
[4, -4, -5, 5]
만 유효한 운동 부품 이루어진 불구하고, 첫번째 부분 때문에, 운동 설정되지 않은 [4, -4]
측면을 선도했다 1
번째 부분 동안, [-5, 5]
측면을 선도하고있다 -1
.
테스트 사례
유효한 테스트 사례 :
[]
[1, -1]
[1, -1, 1, -1]
[-6, 6, -5, -4, -3, 5, 4, 3]
[-1, -5, -8, 1, 5, 8, -7, -6, -5, -3, 7, 6, 5, 3]
[-1, -5, -8, 1, 5, 8, -1, 1]
잘못된 테스트 사례 :
[1]
[1, -2]
[1, 2, -3, -1, -2, 3]
[1, 2, 3, -3, -1, -2]
[-1, -5, -8, 1, 5, 8, 7, 6, 5, 3, -7, -6, -5, -3]
[1, 2, 3, 5, 1, 2, 3, 5]
[1, 2, -5, 4, -6, 5, 5, -6]
[1, 2, -1, 3, -2, -3]
[1, -2, 1]
[-1, -1, 1]
[1, -1, 1]