Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P166PROA - ROUND 6A - Thăng chức |
Steve Zob đã làm việc tại Microsoft được 5 năm và hiện vẫn đang làm lập trình viên tại đây. Để có thể được thăng chức lên Quản lý dự án, Steve phải vượt qua 1 bài test nho nhỏ sau:
Cho 2 dãy số có cùng chiều dài n là a[1], a[2], …, a[n] và b[1], b[2], …, b[n]. Chúng ta định nghĩa hàm o(x, l, r) là kết quả của phép bít OR tất cả các phần tử từ l đến r trong mảng x.
o(x, l, r) = x[l] | x[l+1] | …. | x[r-1] | x[r]
Hãy xác định giá trị lớn nhất của O = o(a, l, r) + o(b, l, r) với mọi l, r thỏa mãn 1 <= l <= r <= n.
Input
Dòng đầu tiên nhập số tự nhiên n (1 <= n <= 1000) là chiều dài của 2 dãy số
Dòng thứ 2 nhập n số tự nhiên a[1], a[2], …, a[n] (1 <= a[i] <= 109)
Dòng thứ 2 nhập n số tự nhiên b[1], b[2], …, b[n] (1 <= b[i] <= 109)
Output
In ra 1 số tự nhiên duy nhất là kết quả của bài toán
Example
Test 1:
Input:
5
1 2 4 3 2
2 3 3 12 1
Output:
22
Test 2:
Input:
10
13 2 7 11 8 4 9 8 5 1
5 7 18 9 2 3 0 11 8 6
Output:
46
Được gửi lên bởi: | adm |
Ngày: | 2016-03-31 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |