Lấy một chuỗi, s
chứa các ký tự ASCII có thể in làm đầu vào và xuất "tổng tách nhị phân" của nó. Cần một lời giải thích?
Làm thế nào để bạn có được tổng số nhị phân?
Chúng tôi sẽ sử dụng chuỗi A4
làm ví dụ trong phần giải thích sau.
Chuyển đổi các ký tự thành nhị phân, coi mỗi chữ cái là ký tự ASCII 7 bit
A -> ASCII 65 -> 1000001 4 -> ASCII 52 -> 0110100
Ghép các số nhị phân thành một số nhị phân mới
A4 -> 1000001 & 0110100 -> 10000010110100
Chia số nhị phân mới thành các khối, trong đó không
1
thể có một0
bên trái của nó. Bạn không nên chia1
s liên tiếp .10000010110100 -> 100000, 10, 110, 100
Chuyển đổi các số nhị phân này thành số thập phân
100000, 10, 110, 100 -> 32, 2, 6, 4
Lấy tổng của các số này:
32 + 2 + 6 + 4 = 44
Vì vậy, đầu ra cho chuỗi A4
nên được 44
.
Các trường hợp thử nghiệm:
a
49
A4
44
codegolf
570
Hello, World!
795
8372
thực sự.