Mô tả
Anh Tâm là kỹ sư truyền dẫn của Viettel, phụ trách giám sát mạng trạm BTS ở khu vực Tây Nguyên. Mỗi trạm BTS có một bảng cấu hình phần mềm được lưu thành một số nguyên không âm, trong đó mỗi bit tương ứng với một tham số bật/tắt (ví dụ: bật giảm công suất ban đêm, kích hoạt chế độ tiết kiệm năng lượng, cho phép chuyển giao mềm...).
Hôm nay hệ thống giám sát báo rằng hai trạm lân cận đang chạy khác cấu hình. Anh Tâm muốn biết chính xác hai trạm này khác nhau ở bao nhiêu tham số, tức là đếm số bit có giá trị khác nhau giữa hai số nguyên biểu diễn cấu hình của hai trạm. Bạn hãy giúp anh Tâm viết một hàm thực hiện việc đếm này.
Đầu vào
Hai số nguyên không âm a và b (kiểu số nguyên), biểu diễn cấu hình bit của hai trạm BTS.
Đầu ra
Trả về một số nguyên không âm là số lượng bit khác nhau giữa a và b.
Ràng buộc
0 <= a, b <= 2^31 - 1- Cần xử lý chính xác cả trường hợp
a = b(kết quả bằng 0) và trường hợp cả hai đều bằng 0.
Ví dụ
Ví dụ 1:
Đầu vào: a = 5, b = 3
Giải thích: 5 ở dạng nhị phân là 101, 3 ở dạng nhị phân là 011. So sánh từng bit từ phải sang trái: bit thứ nhất 1 khác 1 (giống), bit thứ hai 0 khác 1 (khác), bit thứ ba 1 khác 0 (khác). Tổng cộng có 2 bit khác nhau.
Đầu ra: 2
Ví dụ 2:
Đầu vào: a = 7, b = 7
Giải thích: Hai cấu hình giống hệt nhau, mọi bit đều trùng khớp nên không có bit nào khác biệt.
Đầu ra: 0