CF1592E.Bored Bakry

提高+/省选-

通过率:0%

时间限制:4.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Bakry got bored of solving problems related to xor, so he asked you to solve this problem for him.

You are given an array aa of nn integers [a1,a2,…,an][a_1, a_2, \ldots, a_n].

Let's call a subarray al,al+1,al+2,…,ara_{l}, a_{l+1}, a_{l+2}, \ldots, a_r good if al & al+1 & al+2 … & ar>al⊕al+1⊕al+2…⊕ara_l \, \& \, a_{l+1} \, \& \, a_{l+2} \, \ldots \, \& \, a_r \gt a_l \oplus a_{l+1} \oplus a_{l+2} \ldots \oplus a_r, where ⊕\oplus denotes the bitwise XOR operation and &\& denotes the bitwise AND operation.

Find the length of the longest good subarray of aa, or determine that no such subarray exists.

巴克里厌倦了求解与异或(xor)相关的问题,因此他请你帮他解决这个问题。

给你一个包含 nn 个整数的数组 a=[a1,a2,…,an]a = [a_1, a_2, \ldots, a_n]。

我们称子数组 al,al+1,al+2,…,ara_{l}, a_{l+1}, a_{l+2}, \ldots, a_r 是“好的”,当且仅当

al & al+1 & al+2 … & ar>al⊕al+1⊕al+2…⊕ar,a_l \, \& \, a_{l+1} \, \& \, a_{l+2} \, \ldots \, \& \, a_r \gt a_l \oplus a_{l+1} \oplus a_{l+2} \ldots \oplus a_r,

其中 ⊕\oplus 表示按位异或运算,&\& 表示按位与运算。

请找出数组 aa 的最长“好”子数组的长度;若不存在这样的子数组,则说明这一点。

输入格式

The first line contains a single integer nn (1≤n≤1061 \le n \le 10^6) — the length of the array.

The second line contains nn integers a1,a2,…,ana_1, a_2, \ldots, a_n (1≤ai≤1061 \le a_i \le 10^6) — elements of the array.

第一行包含一个整数 nn(1≤n≤1061 \le n \le 10^6)—— 数组的长度。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤1061 \le a_i \le 10^6)—— 数组的元素。

输出格式

Print a single integer — the length of the longest good subarray. If there are no good subarrays, print 00.

输出一个整数——最长“好”子数组的长度。如果没有“好”子数组,则输出 00。

输入输出样例

  • 输入#1

    2
    5 6

    输出#1

    2
  • 输入#2

    3
    2 4 3

    输出#2

    0
  • 输入#3

    6
    8 1 3 3 1 2

    输出#3

    4

说明/提示

In the first case, the answer is 22, as the whole array is good: 5&6=4>5⊕6=35 \& 6 = 4 \gt 5 \oplus 6 = 3.

In the third case, the answer is 44, and one of the longest good subarrays is [a2,a3,a4,a5][a_2, a_3, a_4, a_5]: 1&3&3&1=1>1⊕3⊕3⊕1=01\& 3 \& 3 \&1 = 1 \gt 1\oplus 3 \oplus 3\oplus 1 = 0.

在第一种情况下,答案为 22,因为整个数组都是“好”的:5&6=4>5⊕6=35 \& 6 = 4 \gt 5 \oplus 6 = 3。

在第三种情况下,答案为 44,其中一个最长的“好”子数组是 [a2,a3,a4,a5][a_2, a_3, a_4, a_5]:1&3&3&1=1>1⊕3⊕3⊕1=01\& 3 \& 3 \&1 = 1 \gt 1\oplus 3 \oplus 3\oplus 1 = 0。

输入解题思路,AI测评打分。不知道怎么写?

首页