Advertisement
a53

Moș Crăciun XI

a53
Jan 4th, 2022
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.68 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int di[]={-1,-1,1,1};
  5. int dj[]={-1,1,1,-1};
  6. int n,A[12][12],c,lmax;
  7.  
  8. int inside(int i, int j)
  9. {
  10. return i>=1 && i<=n && j>=1 && j<=n;
  11. }
  12.  
  13. void back(int i, int j, int k)
  14. {
  15. A[i][j]=k;
  16. if(i==n && j==n) { c++; if(k>lmax) lmax=k; }
  17. else
  18. for(int d=0;d<=3;d++)
  19. {
  20. int iv=i+di[d], jv=j+dj[d];
  21. if(inside(iv,jv) && A[iv][jv]==0) back(iv,jv,k+1);
  22. }
  23. A[i][j]=0;
  24. }
  25.  
  26. int main()
  27. {
  28. cin>>n;
  29. for(int i=1;i<=n;i++)
  30. for(int j=1;j<=n;j++)
  31. cin>>A[i][j];
  32. back(1,1,1);
  33. if(c==0) cout<<"Dorel :((";
  34. else cout<<c<<endl<<lmax;
  35. return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement