#include <iostream>
using namespace std;
int sum = 0, minn = 0, n, m, a[10][10], b[10][10];
void DFS (int x, int y, int num, int count)
{
if (x >= 0 && x < m && y >=0 && y < n)
{
if (b[x][y] == 1)
{
b[x][y] = 0;
num += a[x][y];
if (num == sum)
{
minn = min(count + 1,minn);
}
else
{
DFS(x - 1, y, num, count + 1);
DFS(x + 1, y, num, count + 1);
DFS(x, y - 1, num, count + 1);
DFS(x, y + 1, num, count + 1);
}
b[x][y]=1;
}
}
}
int main()
{
cin >> n >> m;
sum = 0;
minn = m * n;
for (int i = 0; i < m; ++i)
{
for (int j = 0; j < n; ++j)
{
cin >> a[i][j];
sum += a[i][j];
b[i][j] = 1;
}
}
if (sum & 1)
{
cout << 0 << endl;
}
else
{
sum >>= 1;
DFS(0, 0, 0, 0);
cout << minn << endl;
}
return 0;
}