Nội dung Bài tập
- Mã:
- SUMDIFF
- Tên:
- Tổng bit khác nhau
- Dạng thi:
- oi
- Thang điểm:
- 10 điểm
- Giới hạn thời gian:
- 1 giây
- Giới hạn bộ nhớ:
- 64 MB
- Được tạo bởi:
- nxphuc
Ta gọi hàm diffBit(a, b) là số vị trí trong biểu diễn nhị phân của a và b, mà tại đó 2 bit tương ứng của a và b là khác nhau. Ví dụ diffBit(3, 5) = 2 vì 310 = 0112, 510 = 1012, ta thấy 2 bit đầu tiên của chúng khác nhau.
Cho một mảng A gồm N phần tử, hãy tính tổng tất cả các giá trị diffBit(ai, aj) với 1 ≤ i,j ≤ N
Input:
- Dòng đầu tiên chứa số nguyên dương N (N ≤ 105)
- Dòng thứ hai chứa N số nguyên kiểu 4byte (tức giá trị của chúng có thể biểu diễn được bằng 4byte).
Output: Một số nguyên duy nhất là kết quả cần tìm. Vì kết quả rất lớn nên chỉ cần xuất phần dư sau khi chia cho 2017.
Ví dụ:
Input:
4
1 2 3 4
Output:
22
Theme :
Mời bạn soạn code
Ai có thể xem bài này :
Thông tin
Phần thảo luận