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

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