eolymp
bolt
Try our new interface for solving problems
Problems

AND-шлях

AND-шлях

Одного разу Андрій брав участь в олімпіаді з програмування. За перше місце був дуже цінний приз --- мішок з цукерками. Проте, скільки б він не намагався розв'язувати останню задачу, в нього нічого не виходило, саме тому він звертається по допомогу до Вас. Вам дана матриця розмірами $n \times m$, де на перетині $i$-того рядка та $j$-того стовпчика знаходиться елемент $a_{i,j}$. Рядки нумеруються зверху вниз від $1$ до $n$, а стовпчики зліва направо від $1$ до $m$. Ліва верхня клітинка має координати $(1;1)$. Треба знайти максимальне значення побітового \t{AND} чисел на шляху він лівої верхньої до правої нижньої клітинки матриці, якщо можна ходити тільки у праву або нижню клітинку (якщо вони існують). Через \t{AND} позначено побітове І. Операція побітового І між двома числами $a$ і $b$ визначається на парах відповідних бітів чисел: якщо обидва біти дорівнюють $1$, то у відповіді біт на цій позиції дорівнює $1$, інакше --- $0$. Наприклад, $6$ \t{AND} $3$ = $0110$ \t{AND} $0011$ = $0010$ = $2$. \InputFile Перший рядок містить два цілі числа $n$ та $m$ ($1 \le n,m \le 10^3$) --- кількість рядків та стовпчиків відповідно. Наступні $n$ рядків містять $m$ цілих чисел $a_{i,j}$ ($0 \le a_{i,j} < 2^{60}$) --- значення елементів матриці. \OutputFile Виведіть одне ціле число --- максимальне значення \t{AND} елементів на шляху від лівої верхньої до правої нижньої клітинки матриці. \Note Детальніше про побітове І: \url{http://bit.ly/3Whf2l6} Пояснення до першого прикладу: З лівої верхньої клітинки до правої нижньої існують два шляхи: $(1;1)$, $(1;2)$, $(2;2)$ --- елементи на цих позиціях мають значення $7$, $3$ та $2$ відповідно. $7$ \t{AND} $3$ \t{AND} $2$ = 2. $(1;1)$, $(2;1)$, $(2;2)$ --- елементи на цих позиціях мають значення $7$, $4$ та $2$ відповідно. $7$ \t{AND} $4$ \t{AND} $2$ = 0. Пояснення до другого прикладу: Одним з можливих шляхів є шлях з виділених червоним чисел. $15$ \t{AND} $13$ \t{AND} $14$ \t{AND} $31$ \t{AND} $31$ \t{AND} $4$ \t{AND} $12$ = 4. \begin{center} \includegraphics{https://static.eolymp.com/content/lr/lren8q0qlt28j3h2gqfdjdv38k.png} \small{Двійкова матриця з другого прикладу} \end{center} \Scoring Рішення, які правильно працюють при $n \times m \le 25$ набиратимуть принаймні $15$ балів. Рішення, які правильно працюють при $a_{i,j} \le 32$ набиратимуть принаймні $15$ балів.
Time limit 1 second
Memory limit 256 MiB
Input example #1
2 2
7 3
4 2
Output example #1
2
Input example #2
4 4
15 9 24 13
13 14 31 18
31 29 31 4
31 27 20 12
Output example #2
4
Input example #3
4 4
15 16 14 4
31 13 32 14
18 15 31 19
13 25 29 13
Output example #3
13
Author Andrii Stolitnii
Source ВЮДОІ 2023. I відбірковий тур