Давши список 1s і -1s, визначте, чи це дійсний код OVSF (вивівши значення truthy або falsey).
Коди OVSF визначаються наступним чином:
[1]є кодом OVSF.Якщо
Xє OVSF-код, тоX ++ XіX ++ -Xобидва є кодами OVSF.Тут
++відбувається конкатенація списку та-заперечує кожен елемент у списку.Жоден інший список не є дійсними кодами OVSF.
Ви можете припустити, що список вхідних даних містить лише -1та 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