Advertisement
jibha

Untitled

Feb 10th, 2022
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. class Solution {
  2. public:
  3.  
  4. void cond(vector<vector<int>>& heights,vector<vector<int>> & visited,int i,int j,int k){
  5.  
  6. if(visited[i][j]!=1){
  7. visited[i][j]=1;
  8. vector<vector<int>> dir={{0,1},{0,-1},{1,0},{-1,0}};
  9.  
  10. for(auto iter:dir){
  11. if(i+iter[0]>=0&&i+iter[0]<heights.size()&&j+iter[1]>=0&&j+iter[1]<heights[0].size()){
  12. if(abs(heights[i][j]-heights[i+iter[0]][j+iter[1]])<=k){
  13. cout<<i<<":"<<j<<":"<<i+iter[0]<<":"<<j+iter[1]<<' ';
  14. cond(heights,visited,i+iter[0],j+iter[1],k);
  15. }
  16. }
  17. }
  18.  
  19. }
  20.  
  21.  
  22. }
  23.  
  24. int b_s(vector<vector<int>>& heights,int left,int right){
  25. int mid=left+right;
  26. mid/=2;
  27.  
  28. while(left<right){
  29. mid=left+right;
  30. mid/=2;
  31.  
  32. cout<<mid<<' ';
  33. vector<vector<int>> visited(heights.size(),vector<int>(heights[0].size(),0));
  34. cond(heights,visited,0,0,mid);
  35.  
  36. if(visited[heights.size()-1][heights[0].size()-1]==1){
  37. return b_s(heights,left,mid);
  38. }else{
  39. return b_s(heights,mid+1,right);
  40. }
  41.  
  42. }
  43.  
  44. return mid;
  45. }
  46.  
  47. int minimumEffortPath(vector<vector<int>>& heights) {
  48.  
  49. vector<vector<int>> visited(heights.size(),vector<int>(heights[0].size(),0));
  50.  
  51.  
  52. cond(heights,visited,0,0,1);
  53. cout<<visited[heights.size()-1][heights[0].size()-1];
  54. cond(heights,visited,0,0,2);
  55. cout<<visited[heights.size()-1][heights[0].size()-1];
  56. cond(heights,visited,0,0,3);
  57. cout<<visited[heights.size()-1][heights[0].size()-1];
  58. cond(heights,visited,0,0,4);
  59. cout<<visited[heights.size()-1][heights[0].size()-1];
  60. cond(heights,visited,0,0,5);
  61. cout<<visited[heights.size()-1][heights[0].size()-1];
  62.  
  63.  
  64. // cout<<b_s(visited,0,10000000);
  65. return 0;
  66. }
  67. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement