Weź ciąg znaków szawierający drukowalne znaki ASCII jako dane wejściowe i wyślij jego „binarną podzieloną sumę”. Potrzebujesz wyjaśnienia?
Jak uzyskać binarną sumę podziału?
Wykorzystamy ciąg A4jako przykład w poniższym objaśnieniu.
Konwertuj znaki na binarne, traktując każdą literę jako 7-bitowy znak ASCII
A -> ASCII 65 -> 1000001 4 -> ASCII 52 -> 0110100Połącz liczby binarne w nową liczbę binarną
A4 -> 1000001 & 0110100 -> 10000010110100Podziel nową liczbę dwójkową na części, gdzie nie
1ma0po lewej stronie żadnego . Nie należy dzielić kolejnych1s.10000010110100 -> 100000, 10, 110, 100Konwertuj te liczby binarne na dziesiętne
100000, 10, 110, 100 -> 32, 2, 6, 4Weź sumę tych liczb:
32 + 2 + 6 + 4 = 44
Tak więc wyjście A4powinno być takie 44.
Przypadki testowe:
a
49
A4
44
codegolf
570
Hello, World!
795
8372rzeczywiście.