1s 및 -1s 목록 이 제공되면 유효한 OVSF 코드 인지 여부를 확인하십시오 (진실 또는 거짓 값 출력).
OVSF 코드는 다음과 같이 정의됩니다.
[1]OVSF 코드입니다.경우
X다음에, OVSF 코드X ++ X와X ++ -X모두 OVSF 코드입니다.다음
++은 목록 연결이며 목록의-모든 요소를 무효화합니다.유효한 다른 OVSF 코드 목록은 없습니다.
입력 목록에 -1and 만 포함되어 있다고 가정 할 수 1있지만 빈 목록과 길이가 2의 거듭 제곱이 아닌 목록을 올바르게 처리해야합니다.
가장 짧은 코드 (바이트)가 이깁니다.
테스트 사례
[] -> False
[1] -> True
[-1] -> False
[1, 1] -> True
[1, -1] -> True
[1, 1, 1, 1] -> True
[1, 1, 1, 1, 1] -> False
[1, -1, -1, 1, -1, 1, 1, -1] -> True
[1, 1, 1, 1, -1, -1, -1, -1, 1, 1, 1, 1] -> False
[1, 1, 1, 1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 1] -> False
[1, 1, 1, 1, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1] -> True