Điểm:
100
Thời gian:
2.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Bob là nghiên cứu sinh tại viện nghiên cứu an toàn thông tin quốc gia. Bob được giao bài toán
phát triển một thuật toán băm mới. Thuật toán do Bob phát triển có thể được phát biểu như sau:
Với một mảng \(𝐵\) không âm chứa \(𝑀 > 1\) phần tử, định nghĩa năng lượng của mảng \(𝐵\) là
\(E(B)=\sum_{i=1}^{M-1}B_i \& B_{i+1}\)
Trong đó, phép & là phép toán and từng bit. Cho một mảng các số nguyên không âm chứa \(𝑁\)
phần tử \(𝐴 = \{𝐴_1, 𝐴_2, ..., 𝐴_𝑁\}\). Mã băm của mảng \(A\), kí hiệu là \(H(A)\), là năng lượng lớn nhất của
các mảng con (không cần liên tiếp) có ít nhất hai phần tử của \(𝐴\).
Để kiểm chứng độ hiệu quả của thuật toán, Bob cần bạn viết một chương trình tính mã băm
của một mảng \(𝐴\) cho trước.
Input
- Dòng đầu chứa duy nhất một số nguyên dương \(𝑁\).
- Dòng tiếp theo chứa \(𝑁\) số nguyên dương, mỗi số cách nhau ít nhất một dấu cách, mô tả
mảng \(𝐴\).
Output
- Dòng duy nhất chứa giá trị của \(𝐻(𝐴)\).
Scoring
- Trong tất cả các subtask, \(𝐴_𝑖 \le 10^{12}\) với mọi \(1 \le 𝑖 \le 𝑁\).
- Subtask \(1\) (\(20\%\) số điểm): \(𝑁 \le 10\)
- Subtask \(2\) (\(30\%\) số điểm): \(𝑁 \le 5000\)
- Subtask \(3\) (\(20\%\) số điểm): \(𝑁 \le 10^5, A_i \leq 100\)
- Subtask \(4\) (\(30\%\) số điểm): \(N \leq 10^6\)
Example
Test 1
Input
5
1 2 3 1 3
Output
5
Note
- Dãy con được chọn là \([2, 3, 3]\), (2 \(and\) 3) + (3 \(and\) 3) = 5.
- Kết quả của phép \(and\) của đôi một phần tử đều bằng 0.
Test 2
Input
4
1 2 4 0
Output
0
Bình luận