Codeforces Round 705 (Div. 2) |
---|
Закончено |
Даны два целых числа $$$l$$$ и $$$r$$$ в двоичном представлении. Пусть $$$g(x, y)$$$ равняется побитовому исключающему ИЛИ всех целых чисел от $$$x$$$ до $$$y$$$ включительно (т. е. $$$x \oplus (x+1) \oplus \dots \oplus (y-1) \oplus y$$$). Определим $$$f(l, r)$$$ как максимум по всем значениям $$$g(x, y)$$$ при $$$l \le x \le y \le r$$$.
Выведите $$$f(l, r)$$$.
Первая строка входных данных содержит одна целое число $$$n$$$ ($$$1 \le n \le 10^6$$$) — длину двоичного представления числа $$$r$$$.
Вторая строка содержит двоичное представление числа $$$l$$$ — строку из цифр $$$0$$$ и $$$1$$$ длины $$$n$$$ ($$$0 \le l < 2^n$$$).
Третья строка содержит двоичное представление числа $$$r$$$ — строку из цифр $$$0$$$ и $$$1$$$ длины $$$n$$$ ($$$0 \le r < 2^n$$$).
Гарантируется, что $$$l \le r$$$. Двоичное представление числа $$$r$$$ не содержит лишних ведущих нулей (если $$$r=0$$$, то его битовое представление состоит из одного нуля). Двоичное представление числа $$$l$$$ дополнено ведущими нулями так, чтобы его длина была равна $$$n$$$.
В единственной строке выведите значение $$$f(l, r)$$$ в двоичном представлении без лишних ведущих нулей для данных $$$l$$$ и $$$r$$$.
7 0010011 1111010
1111111
4 1010 1101
1101
В примере из условия $$$l=19$$$, $$$r=122$$$. $$$f(x,y)$$$ максимально и равно $$$127$$$, например, при $$$x=27$$$, $$$y=100$$$.
Название |
---|