1533: Blue
内存限制:256 MB
时间限制:10.000 S
评测方式:文本比较
命题人:
提交:10
解决:7
题目描述
在加勒比海的深处,有一个比Monkey岛更奇特的岛。它不仅仅有奇怪的形状,还被分割成一个n*m的网格,每个格子有个海拔。不幸的是,海平面开始上涨,并且在第i年,海平面高度是i米。更奇怪的是这个岛是由海绵构成的,水可以顺利地穿过它。因此,一个海拔不超过海平面高度的格子就被淹没了。相连的(有公共边的)未被淹没的格子形成了未被淹没区域。现在想知道某一年,这个岛屿未被淹没的区域有多少个。
下图是一个4*5的岛屿。格子里面的数字代表这个格子的海拔。没有被淹没的区域是深色的。第一年,有两个未被淹没区域,第二年有三个。
输入
输入数据包含多组测试数据。第一行包含一个正整数z(z <= 20),代表测试数据组数。接下来z组测试数据,对于每组测试数据的第一行包含两个正整数n和m,代表岛屿的尺寸。n和m都是不超过1000的正整数。接下来n行每行包含m个正整数,不超过109,用空格隔开,代表相应的格子的海拔。接下来一行一个正整数T(T <= 105)。最后一行包含T个整数tj,代表询问的年份。保证0 ≤ t1 ≤ t2 ≤ … ≤ tT-1 ≤ tT ≤ 109。
输出
对于每组测试数据,你要输出一行,包含T个数字rj,代表第tj年的未被淹没的区域数。
相邻两个数字用一个空格隔开。注意行末尾没有空格。
样例输入 复制
1
4 5
1 2 3 3 1
1 3 2 2 1
2 1 3 4 3
1 2 2 2 2
5
1 2 3 4 5
样例输出 复制
2 3 1 0 0