#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; long long MOD = 1000000007; int main() { int H,W; cin >> H >> W; vector< vector > P( H+2, vector(W+2, 0) ); for ( int i = 1; i <= H; i++ ) { string s; cin >> s; for ( int j = 1; j <= W; j++ ) { P[i][j] = s[j-1]-'0'; } } double ans = DBL_MAX; for ( int i = 1; i <= W; i++ ) { double a,b; a = b = 0; for ( int y = 1; y <= H; y++ ) { for ( int x = 1; x <= W; x++ ) { if ( P[y][x] ) { a += sqrt( (x-i)*(x-i)+y*y ); b += sqrt( (x-i)*(x-i)+(y-(H+1))*(y-(H+1)) ); } } } ans = min( ans, min(a,b) ); } for ( int i = 1; i <= H; i++ ) { double a,b; a = b = 0; for ( int y = 1; y <= H; y++ ) { for ( int x = 1; x <= W; x++ ) { if ( P[y][x] ) { a += sqrt( x*x+(y-i)*(y-i) ); b += sqrt( (x-(W+1))*(x-(W+1))+(y-i)*(y-i) ); } } } ans = min( ans, min(a,b) ); } printf( "%.9f\n", ans ); return 0; }