#pragma GCC optimize("Ofast") #pragma GCC target("avx2") char*mmap(); #define RD(v) int v=0;{int _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;} d[3001*3000]; main(){ char*rp=mmap(0l,1l<<28,1,2,0,0ll); RD(h); RD(w);++w; int z=0,i; for(i=0;i<=w;++i){ z|=d[i]=*rp++&1; } int a=0,b=d[0],c; while(c=*rp++){ if(c&1){ c=b; b=d[i-w]; a=(a=a?z:a; }else{ a=0; } d[i]=a; ++i; } z=z+1>>1; { int n=0; long d=0; while(++n,d=d<<8|0x30|z%10,z/=10); write(1,&d,n); } _exit(0); }