SHARE
TWEET

palat

a guest Nov 15th, 2019 85 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <fstream>
  2. #include <fstream>
  3. #include <queue>
  4. using namespace std;
  5. ifstream fin ("palat.in");
  6. ofstream fout ("palat.out");
  7. struct poz
  8. {
  9.     int x,y;
  10. };
  11. poz f[1000000];
  12. int a[1001][1001],n,m,i,j,k,mini=100000000,ix,jx;
  13. int dx[]= {0,1,0,-1};
  14. int dy[]= {-1,0,1,0};
  15. char x;
  16. queue<poz>q;
  17. int main()
  18. {
  19.     fin>>n>>m;
  20.     k=0;
  21.     for(i=1; i<=n; i++)
  22.         for(j=1; j<=m; j++)
  23.         {
  24.             fin>>x;
  25.             if(x=='Z')
  26.                 a[i][j]=-1;
  27.             else if(x=='I')
  28.             {
  29.                 a[i][j]=1;
  30.                 q.push({i,j});
  31.             }
  32.             else if(x=='F')
  33.             {
  34.                 k++;
  35.                 f[k]= {i,j};
  36.  
  37.             }
  38.         }
  39.  
  40.     for(i=0; i<=n+1; i++)
  41.         a[i][0]=a[i][m+1]=-1;
  42.     for(j=0; j<=m+1; j++)
  43.         a[0][j]=a[n+1][j]=-1;
  44.  
  45.     poz p1,p2;
  46.  
  47.     while(!q.empty())
  48.     {
  49.         p1=q.front();
  50.         q.pop();
  51.  
  52.         for(i=0; i<4; i++)
  53.         {
  54.             p2.x=p1.x+dx[i];
  55.             p2.y=p1.y+dy[i];
  56.  
  57.             if(a[p2.x][p2.y]==0)
  58.             {
  59.                 a[p2.x][p2.y]=a[p1.x][p1.y]+1;
  60.                 q.push(p2);
  61.             }
  62.         }
  63.     }
  64.  
  65.         for(i=k;i>=1;i--)
  66.         {
  67.             if(a[f[k].x][f[k].y]<mini)
  68.                 mini=a[f[k].x][f[k].y],ix=f[k].x,jx=f[k].y;
  69.         }
  70.     fout<<ix<<' '<<jx;
  71.     return 0;
  72. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top