#include #include using namespace std; ifstream f("data.in"); int n,m,ma[505][505],maxi,viz[505][505]; void up(int i,int j,int dis,int dis2,int dis3) { viz[i][j]==1; if(ma[i-1][j]==1) up(i-1,j,dis,dis2,dis3+1); if(maxi=y-dis2) { y--; viz[x][y]=1; } while(x>=x-dis) { x--; viz[x][y]=1; } }*/ } void right(int i,int j,int dis,int dis2) { viz[i][j]==1; if(ma[i][j+1]==1) right(i,j+1,dis,dis2+1); if(ma[i-1][j]==1 /*&& dis2!=1*/) up(i-1,j,dis,dis2,1); } void down(int i,int j,int dis) { viz[i][j]==1; if(ma[i+1][j]==1) down(i+1,j,dis+1); if(ma[i][j+1]==1 && dis!=1) right(i,j+1,dis,1); } int main() { maxi=0; string aux; f>>n>>m; int i,j; for(i=1;i<=n;i++) { f>>aux; for(j=m;j>0;j--) { ma[i][j]=(int)aux[j-1]-48; //aux=aux/10; //cout<