Bit thấp nhất

Xem dưới dạng PDF

Gửi bài giải


Điểm: 5
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 64M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Trong tính toán mức thấp (low-level bit manipulation), LSB (Lowest Set Bit) là bit có trọng số nhỏ nhất có giá trị bằng \(1\) của một số nguyên. Ví dụ, số \(12\) ở hệ nhị phân là \(1100_2\), bit \(1\) thấp nhất nằm ở vị trí thứ \(3\) (từ phải sang), tương ứng giá trị \(4\) (\(0100_2\)).

Cho một dãy gồm \(N\) số nguyên dương \(a_1, a_2, \dots, a_N\). Hãy tính tổng giá trị LSB của toàn bộ các số trong dãy.

Định dạng đầu vào

  • Dòng đầu chứa số nguyên dương \(N\) (\(1 \le N \le 10^5\)).
  • Dòng hai chứa \(N\) số nguyên dương \(a_i\) (\(1 \le a_i \le 10^9\)).

Định dạng đầu ra

  • In ra một số nguyên duy nhất là tổng giá trị LSB của các phần tử trong dãy.

Ví dụ

Input:

4
4 12 7 8

Output:

17

Giải thích

  • LSB(4) = 4
  • LSB(12) = 4
  • LSB(7) = 1
  • LSB(8) = 8
  • Tổng = 4 + 4 + 1 + 8 = 17.

Ràng buộc

  • 30% số điểm ứng với \(N \le 1000\).
  • 70% số điểm còn lại không có ràng buộc gì thêm.

Nhận xét

Không có ý kiến tại thời điểm này.