XOR
Вам дано число x і послідовність із n чисел. Потрібно знайти найдовший підрядний інтервал елементів цієї послідовності, такий що xor всіх цих елементів не менший за x. Тобто, більш формально, потрібно знайти такі i і k, що
a[i]
xor a[i+1]
xor ... xor a[i+k-1]
≥ x, де 1 ≤ i ≤ i + k - 1 ≤ n,
а значення k є максимально можливим.
Гарантується, що такий інтервал для початкової послідовності існує. Нагадаємо, що операція xor виконується над бітовим представленням цілих чисел так, що для пари відповідних бітів справедливо:
0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0
Результат цієї операції не залежить від порядку операндів: a xor b = b xor a. Також справедливо наступне: (a xor (a xor b)) = b.
У мові програмування Паскаль ця операція позначається як xor, у мовах С/С++/Java як ^.
Вхідні дані
У першому рядку знаходяться числа n (1 ≤ n ≤ 250 000) і x (0 ≤ x ≤ 10^9
). У наступному рядку записані n цілих невід'ємних чисел, кожне з яких не перевищує 10^9
.
Вихідні дані
Виведіть два числа: значення i і k. Якщо існує декілька рішень, виберіть те, в якому значення i є мінімальним.