#include <bits/stdc++.h>
using namespace std;
int64_t M,N,k,r,c;
int main()
{
cin>>M>>N>>k>>r>>c;
int mp[M][N];
for (int i=0; i<M; i++) {
for (int j=0; j<N; j++) {
cin>>mp[i][j];
}
}
int64_t score=mp[r][c],jewel=1,way=1;
mp[r][c]--;
//cout<<"Start(r,c):"<<r<<','<<c<<endl;
for (int i=0;;i++) {
if (way==1) {
if (c+1>=N) {
way=2;
}
else if (mp[r][c+1]==0) {
cout<<jewel;
return 0;
}
else if (mp[r][c+1]==-1) {
way=2;
}
else {
score+=mp[r][c+1];
jewel++;
if (score%k==0) {
way=2;
}
mp[r][c+1]--;
c++;
}
}
else if (way==2) {
if (r+1>=M) {
way=3;
}
else if (mp[r+1][c]==0) {
cout<<jewel;
return 0;
}
else if (mp[r+1][c]==-1) {
way=3;
}
else {
score+=mp[r+1][c];
jewel++;
if (score%k==0) {
way=3;
}
mp[r+1][c]--;
r++;
}
}
else if (way==3) {
if (c==0) {
way=4;
}
else if (mp[r][c-1]==0) {
cout<<jewel;
return 0;
}
else if (mp[r][c-1]==-1) {
way=4;
}
else {
score+=mp[r][c-1];
jewel++;
if (score%k==0) {
way=4;
}
mp[r][c-1]--;
c--;
}
}
else if (way==4) {
if (r==0) {
way=1;
}
else if (mp[r-1][c]==0) {
cout<<jewel;
return 0;
}
else if (mp[r-1][c]==-1) {
way=1;
}
else {
score+=mp[r-1][c];
jewel++;
if (score%k==0) {
way=1;
}
mp[r-1][c]--;
r--;
}
}
//cout<<"current(r,c):"<<r<<','<<c<<" Way:"<<way<<endl;
//cout<<"score:"<<score<<','<<"jewel:"<<jewel<<endl;
}
return 0;
}
score:目前分數 way:方向 mp:地圖 jewel:寶石持有量