Advertisement
Denis_Hristov

FindingAWayThroughMatrix(Doesn't work)

Feb 26th, 2021 (edited)
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.18 KB | None | 0 0
  1. public class DinamichnoOptimirane {
  2.  
  3.     private static int number = 3;
  4.     private static int row = number;
  5.     private static int col = number;
  6.  
  7.     public static void main(String[] args) {
  8.  
  9.         long[][] Stat = new long[row][col];
  10.         MemSet(Stat);
  11.  
  12.         Stat = new long[row][col];
  13.         PrintArray(Stat);
  14.         System.out.println("Number of solutions : " + recurse(row - 1, col - 1, Stat));
  15.         System.out.printf("");
  16.         PrintArray(Stat);
  17.  
  18.     }
  19.     private static long recurse(int remRows, int remCols, long [][] Stat){
  20.         for (int i = 0; i < Stat.length; i++) {
  21.             long[] currentstep = Stat[i];
  22.             while(remRows < row) {
  23.                 if (remRows == 0) {
  24.                     currentstep = Stat[i++];
  25.                     if (remRows == 0) {
  26.                         return 1;
  27.                     }
  28.                 }
  29.             }
  30.             for (int j = 0; j < Stat[i].length; j++) {
  31.                 while(remCols < col) {
  32.                      if (remCols == 0) {
  33.                         currentstep = Stat[j++];
  34.                         if (remCols == 0) {
  35.                             return 1;
  36.                         }
  37.                     }
  38.                 }
  39.             }
  40.             MemSet(Stat);
  41.         }
  42.  
  43.         if(Stat[remRows][remCols] != 0)
  44.             return Stat[remRows][remCols];
  45.  
  46.  
  47.         long answer = 0;
  48.  
  49.         answer +=  recurse( remRows - 1, remCols, Stat );
  50.         System.out.println(answer + "d");
  51.         answer +=  recurse (remRows, remCols - 1, Stat);
  52.         System.out.println(answer + "r");
  53.  
  54.         //return answer;
  55.  
  56.         return Stat[remRows][remCols] = answer;
  57.     }
  58.     private static void PrintArray(long[][] Stat){
  59.         System.out.println("Stat: ");
  60.         for (int i = 0; i < Stat.length; i++) {
  61.             for (int j = 0; j < Stat[i].length; j++) {
  62.                 System.out.print(Stat[i][j] + " ");
  63.             }
  64.             System.out.println();
  65.         }
  66.     }
  67.     private static void MemSet(long[][] Stat){
  68.         for (int i = 0; i < row; i++) {
  69.             for (int j = 0; j < col; j++) {
  70.                 Stat[i][j]= 0;
  71.             }
  72.         }
  73.     }
  74. }
  75.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement