#6668. 「STEMA202308C」松鼠找坚果6

「STEMA202308C」松鼠找坚果6

题目描述

注:input()输入函数的括号中不允许添加任何信息

编程实现

在一个M行N列的网格中放有若干个坚果(一个小格子里最多放一个坚果),第X行Y列的小格子是小松鼠的家。

小松鼠可以向上下左右的格子移动寻找坚果,但它每次从家出发后,最多可以移动K个小格子,发现格子中有见过,就会将其运回家藏起来(运回家所移动的格子不做计算),然后再从家出发寻找其他坚果,小松鼠最多可以藏几个坚果。

例如:M=7,N=6, X=3, Y=4, K=3,在7行6列的网格中有若干个坚果(如下图),小松鼠的家在第3行,第4列的位置,最多可以移动3个小格。

image

小松鼠最多可以藏7个坚果(小格子底色为绿色的坚果)。

输入描述

第一行输入两个正整数M和N(2<=M<=30,1<=N<=30),表示M行N列的网格,两个正整数之间以一个英文逗号隔开。

第二行输入两个正整数X和Y(1<=X<=M,1<=Y<=N),表示小松鼠家的位置在第X行第Y列,两个正整数之间以一个英文逗号隔开

第三行输入一个正整数K(1<=K<=max(M,N)-1),表示小松鼠从家出发后,最多可以移动的小格数

第四行开始,输入M行,每行N个整数,除了第X行Y列的小格子用2表示小松鼠的家,其他小格子的整数只能是0或者1,0表示小格子中没有坚果,1表示小格子中有1个坚果,整数之间以一个英文逗号隔开

输出描述

输出一个整数,表示小松鼠最多可以藏的坚果数量

样例

输入样例 #1

7 6
3 4
3
0 0 1 0 1 0
0 0 0 0 1 0
0 1 0 2 0 0
1 0 0 1 0 1
0 0 1 0 0 0
0 0 0 0 0 1
1 0 0 1 0 0

输出样例 #1

7