Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- ifstream f("traversare.in");
- ofstream g("traversare.out");
- struct pereche{
- int lin,col;
- };
- pereche coada[1000005];
- int pr,ul,nr,a[1005][1005],n,m;
- int i,j,l3,c3,l,c;
- int dl[4]={-1,1,0,0};
- int dc[4]={0,0,-1,1};
- int main()
- {
- f>>n>>m;
- for(i=1;i<=n;i++)
- for(j=1;j<=m;j++)
- f>>a[i][j];
- f>>l1>>c1>>l2>>c2;
- pr=1;ul=0;nr=0;
- for(j=1;j<=m;j++){
- if(a[1][j]==0){
- ul++;nr++;
- coada[ul]={1,j};
- a[1][j]=1;
- }
- }
- while(nr>0)
- {
- l=coada[pr];
- c=coada[pr];
- for(i=0;i<=3;i++)
- {
- l3=l+dl[i];
- c3=c+dc[i];
- if(l3>=1 && l3<=n && c3>=1 && c3<=m && a[l3][c3]==0)
- {
- a[l3][c3]=1+a[l][c];
- ul++;nr++;
- coada[ul]={l3,c3};
- }
- }
- pr++;nr--;
- }
- int minm=a[n][1];
- for(i=2;i<=m;i++)
- if(minim>a[n][i])
- minim=a[n][i];
- g<<minim;
- f.close();
- g.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement