Cặp XOR Lớn Nhất
Xem dưới dạng PDF
Gửi bài giải
Điểm:
10
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Kiểu bài tập
Trong bài tập mật mã an toàn thông tin của FPTU, sinh viên nhận được một mảng \(A\) gồm \(N\) số nguyên không âm. Hệ thống yêu cầu tìm hai chỉ số \(i, j\) (\(1 \le i < j \le N\)) sao cho phép toán Bitwise XOR giữa chúng là lớn nhất: \(A[i] \oplus A[j]\).
Hãy thiết kế một giải pháp tối ưu sử dụng Bitwise Trie (cây tiền tố bit nhị phân).
Định dạng đầu vào
- Dòng đầu chứa số nguyên dương \(N\) (\(2 \le N \le 10^5\)).
- Dòng thứ hai chứa \(N\) số nguyên không âm \(a_1, a_2, \dots, a_N\) cách nhau bởi khoảng trắng (\(0 \le a_i \le 10^9\)).
Định dạng đầu ra
- Một số nguyên duy nhất là giá trị XOR lớn nhất tìm được.
Ví dụ
Input:
4
3 10 5 25
Output:
28
Giải thích
Chọn hai số 5 và 25: \(5 \oplus 25 = 28\).
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