#include <iostream>
#include "map"
using namespace std;
int m,n;
int a[4][2]={{1,0},{0,1},{-1,0},{0,-1}};
char a1[2000][2000];
void dfs(int x, int y){
    for (int i = 0; i < 4; ++i) {
        int x1=x+a[i][0];
        int y1=y+a[i][1];
        if(x1>=0&&x1<m&&y1>=0&&y1<n&&a1[x1][y1]=='0'){
            a1[x1][y1]='*';
            dfs(x1,y1);
        }
    }
}
int main() {
    int x,y;
    cin>>x>>y;
    m=x;n=y;
    for (int i = 0; i < x; ++i) {
        for (int j = 0; j < y; ++j) {
            cin>>a1[i][j];
        }
    }
    for (int i = 0; i < x; ++i) {
            dfs(i,0);
        dfs(i,y-1);
    }
    int yy=0;
    for (int i = 0; i < x; ++i) {
        for (int j = 0; j < y; ++j) {
            if(a1[i][j]=='0')yy++;
        }
    }
    cout<<yy;

}

/**************************************************************
	Problem: 1913
	User: yangyucheng
	Language: C++
	Result: Wrong Answer
****************************************************************/