#1749. 网格行走

网格行走

题目描述

桃子发现她出现在了一个 nnmm 列的网格图上。每个位置都有一个高度,第 ii 行第 jj 列的高度为 hi,jh_{i,j}

她可以随便选择一个点作为起点,每次移动时,她只能向高度小于等于当前的位置进行移动。同时,新的位置须与当前位置相邻(上、下、左、右的四个位置中的其中一个)。

当她在两个相同高度的位置之间移动时,她将不耗费体力。否则,她的每次移动都会消耗 11 的体力。

现在桃子想知道,对于所有可能的起始点消耗体力的最大值是多少?

注意:桃子任何时候都不能出现在网格图外。

输入格式

本题包含多组测试数据,第一行一个整数,表示数据组数 TT

后接 TT 组数据。对于每一组数据:

第一行两个整数,分别表示 nnmm

接下来 nn 行,每行 mm 个整数,分别表示网格图格点的高度。

输出格式

对于每一组数据,输出一行共一个整数,表示消耗体力的最大值。

1
3 3
3 5 3
2 3 2
2 1 8
3

数据范围与提示

对于 100%100\% 的数据,保证 1T101\le T\le 101n,m5001\le n,m\le 5000hi,jnm0\le h_{i,j}\le nm

本题共 1010 个测试点。各测试点范围如下:

数据点编号 n,mn,m 特殊性质
131\sim 3 20\le 20
454\sim 5 100\le 100
66 500\le 500 保证同组数据下 hh 互不相同
77 保证相邻格子内 hh 互不相同
8108\sim 10

大样例

T2sample