小苯的迷宫行走
题号:NC285858
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小苯面前有一个面积为奇数的 nm 列的矩阵迷宫,位于 (i, j) 格子上的数字为 g_{i,j}

现在他位于 (1,1) 的左上角点,现在他想前往 (n,m) 的右下角,具体的,小苯每一步可以向“上、下、左、右”四个方向行走一步,且走过的方格不能重复走
\bullet 形式化的,如果小苯目前处于 (x, y),则他下一步可以走到 (x+1,y), (x-1, y), (x, y+1), (x,y-1)。(当然,前提是这些点位于矩阵以内,且之前没有走过。)

路径的权值定义为路径上所有方格数字的按位或运算值(|),他想知道如果他以最优方式行走,到终点的最大权值是多少,请你帮他算一算吧。

输入描述:

本题含有多组测试数据。
第一行一个正整数 T\ (1 \leq T \leq 1000),表示测试数据的组数。
接下来对于每组测试数据,输出包含 n+1 行。
第一行两个正整数 n, m\ (1 \leq n, m \leq 4000),分别表示矩阵迷宫的长和宽。
(保证 n \times m ,即矩阵的面积为奇数。)
接下来 n 行,每行输入 m 个数字,其中第 i 行的第 j 个数字为 g_{i,j}\ (0 \leq g_{i,j} \leq 10^9)
(保证所有测试数据中,n 的总和不超过 4000m的总和不超过 4000)。

输出描述:

对于每组测试数据,输出包含一行一个整数,表示最大的路径权值。
示例1

输入

复制
1
3 3
1 3 1
5 1 1
1 2 1

输出

复制
7

说明

可以使用如上图的路线(箭头表示方向),经过的点值分别为:\{1,3,5,1,1,2,1\},最终的权值为 7 最大,可以证明不存在更优的答案。