Advertisement
Guest User

lee

a guest
Feb 18th, 2020
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4.  
  5. int n,viz[20],i,prim,pi,ps,l[100][100],l1,c1,j,li,ci;
  6. struct camera
  7. {
  8. int l,c;
  9. } c[30];
  10.  
  11. int main()
  12. { ifstream f("Lee.txt");
  13. f>>n;
  14. for(i=1;i<=n;i++)
  15. for(j=1;j<=n;j++)
  16. f>>l[i][j];
  17. for(i=0;i<=n+1;i++)
  18. {l[0][i]=-1;
  19. l[n+1][i]=-1;
  20. l[i][0]=-1;
  21. l[i][n+1]=-1;
  22. }
  23. cin>>l1>>c1;
  24. viz[prim]=1;
  25. pi=1;
  26. ps=1;
  27. c[pi].l=l1;
  28. c[pi].c=c1;
  29. while(ps<=pi)
  30. { li=c[ps].l;
  31. ci=c[ps].c;
  32. if(l[li-1][ci]==0&& !(li-1==l1&&c1==ci))
  33. {
  34. pi++;
  35. c[pi].l=li-1;
  36. c[pi].c=ci;
  37. l[li-1][ci]=l[li][ci]+1;
  38. }
  39. if(l[li][ci-1]==0&& !(li==l1&&c1-1==ci))
  40. {
  41. pi++;
  42. c[pi].l=li;
  43. c[pi].c=ci-1;
  44. l[li][ci-1]=l[li][ci]+1;
  45. }
  46. if(l[li+1][ci]==0&& !(li+1==l1&&c1==ci))
  47. {
  48. pi++;
  49. c[pi].l=li+1;
  50. c[pi].c=ci;
  51. l[li+1][ci]=l[li][ci]+1;
  52. }
  53. if(l[li][ci+1]==0&& !(li==l1&&c1+1==ci))
  54. {
  55. pi++;
  56. c[pi].l=li;
  57. c[pi].c=ci+1;
  58. l[li][ci+1]=l[li][ci]+1;
  59. }
  60. ps++;
  61. }
  62. for(i=1;i<=n;i++)
  63. {for(j=1;j<=n;j++)
  64. cout<<l[i][j]<<" ";
  65. cout<<endl;}
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement