1S और -1s की सूची को देखते हुए , यह निर्धारित करें कि यह एक वैध OVSF कोड है या नहीं (सत्य या गलत तरीके से आउटपुट करके)।
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