1533: Blue

内存限制:256 MB 时间限制:10.000 S
评测方式:文本比较 命题人:
提交:10 解决:7

题目描述

在加勒比海的深处,有一个比Monkey岛更奇特的岛。它不仅仅有奇怪的形状,还被分割成一个n*m的网格,每个格子有个海拔。不幸的是,海平面开始上涨,并且在第i年,海平面高度是i米。更奇怪的是这个岛是由海绵构成的,水可以顺利地穿过它。因此,一个海拔不超过海平面高度的格子就被淹没了。相连的(有公共边的)未被淹没的格子形成了未被淹没区域。现在想知道某一年,这个岛屿未被淹没的区域有多少个。

    下图是一个4*5的岛屿。格子里面的数字代表这个格子的海拔。没有被淹没的区域是深色的。第一年,有两个未被淹没区域,第二年有三个。

输入

输入数据包含多组测试数据。第一行包含一个正整数zz <= 20,代表测试数据组数。接下来z组测试数据,对于每组测试数据的第一行包含两个正整数nm,代表岛屿的尺寸。nm都是不超过1000的正整数。接下来n行每行包含m个正整数,不超过109,用空格隔开,代表相应的格子的海拔。接下来一行一个正整数TT <= 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