Jeśli wyrazisz pewną liczbę całkowitą dodatnią w postaci binarnej bez zer wiodących i zamienisz każdą na 1a, (a każdą na 0a ), to czy wszystkie nawiasy się zgadzają?
W większości przypadków nie będą. Na przykład 9 ma 1001postać binarną, która staje się tym ())(, gdzie pasują tylko dwa pierwsze nawiasy.
Ale czasami będą pasować. Na przykład 44 ma postać 101100binarną, co oznacza ()(()), że wszystkie lewe nawiasy mają pasujący prawy nawias.
Napisz program lub funkcję, która przyjmuje dodatnią liczbę całkowitą dziesiętną i wypisuje lub zwraca prawdziwą wartość, jeśli wersja liczby w nawiasach binarnych ma wszystkie pasujące nawiasy. Jeśli nie, wydrukuj lub zwróć wartość fałszowania .
Najkrótszy kod w bajtach wygrywa.
Prawdziwe przykłady poniżej 100:
2, 10, 12, 42, 44, 50, 52, 56
Przykłady Falsy poniżej 100:
1, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 45, 46, 47, 48, 49, 51, 53, 54, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99