Advertisement
gelita

robot paths c#

Mar 4th, 2020
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.80 KB | None | 0 0
  1. using System;
  2.  
  3. public class Test
  4. {
  5.     public static void Main()
  6.     {
  7.         Console.WriteLine("Hello");
  8.     }
  9.  
  10.     public static int count = 0;
  11.     public static int robotPaths(List<List<int>> matrix)
  12.     {
  13.         Helper(matrix, 0, 0);
  14.        
  15.         return count;
  16.     }
  17.    
  18.     public static void Helper(List<List<int>> matrix, int i, int j)
  19.     {
  20.         if(matrix[i][j] == 1)
  21.             return;
  22.            
  23.         if(i == matrix.Count - 1 && j == matrix[i].Count - 1)
  24.         {
  25.             count++;
  26.             return;
  27.         }
  28.         /*
  29.           1   1   1
  30.           0   1   1
  31.           0   0   0
  32.         */
  33.         matrix[i][j] = matrix[i][j] == 0 ? 1 : 0;
  34.        
  35.         if(i < matrix.Count - 1)
  36.             Helper(matrix, i+1, j);
  37.            
  38.         if(j < matrix[i].Count - 1)
  39.             Helper(matrix, i, j+1);
  40.            
  41.         if(i > 0)
  42.             Helper(matrix, i-1, j);
  43.            
  44.         if(j > 0)
  45.             Helper(matrix, i, j-1);
  46.            
  47.         matrix[i][j] = matrix[i][j] == 0 ? 1 : 0;
  48.     }
  49. }
  50.  
  51. /*
  52. public static void Helper(List<List<int>> matrix, int i, int j)
  53.     {
  54.         if(matrix[i][j] == 1)
  55.             return;
  56.            
  57.         if(i == matrix.Count - 1 && j == matrix[i].Count - 1)
  58.         {
  59.             count++;
  60.             return;
  61.         }
  62.        
  63.         matrix[i][j] = 1;
  64.        
  65.         if(i < matrix.Count - 1 && matrix[i+1][j] == 0)
  66.             Helper(matrix, i+1, j);
  67.            
  68.         if(j < matrix[i].Count - 1 && matrix[i][j+1] == 0)
  69.             Helper(matrix, i, j+1);
  70.            
  71.         if(i > 0 && matrix[i-1][j] == 0)
  72.             Helper(matrix, i-1, j );
  73.            
  74.         if(j > 0 && matrix[i][j-1] == 0)
  75.             Helper(matrix, i, j-1);
  76.            
  77.         matrix[i][j] = 0;
  78.     }
  79. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement