Advertisement
Guest User

Untitled

a guest
Nov 25th, 2014
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.08 KB | None | 0 0
  1.  File plik = new File("in.txt");
  2.         Scanner input = new Scanner(plik);
  3.  
  4.         String s1 = input.nextLine();
  5.         String s2 = input.nextLine();
  6.  
  7.         input.close();
  8.  
  9.         String ss1[] = s1.split(" ");
  10.         String ss2[] = s2.split(" ");
  11.  
  12.         for (int i = 0; i < ss1.length; i++) {
  13.             System.out.print(ss1[i] + " ");
  14.         }
  15.         System.out.println();
  16.         for (int i = 0; i < ss2.length; i++) {
  17.             System.out.print(ss2[i] + " ");
  18.         }
  19.         System.out.println();
  20.  
  21.         int tmp = 0;
  22.         int lc = 0;
  23.  
  24.         PrintWriter out = new PrintWriter("out.txt");
  25.  
  26.         int n = ss1.length;
  27.         int m = ss2.length;
  28.  
  29.         int[][] C = new int[n + 1][m + 1];
  30.        
  31.  
  32.         for (int i = 0; i < n; i++) { lc++;
  33.             for (int j = 0; j < m; j++) { lc++;
  34.                 if (ss1[i].equals(ss2[j])) {
  35.                     C[i + 1][j + 1] = C[i][j] + 1;
  36.                 } else {
  37.                     C[i + 1][j + 1] = Math.max(C[i + 1][j], C[i][j + 1]);
  38.                 }
  39.             }
  40.         }
  41.  
  42.         for (int i = 0; i < n + 1; i++) {
  43.             for (int j = 0; j < m + 1; j++) {
  44.                 System.out.print(C[i][j] + " ");
  45.             }
  46.             System.out.println();
  47.         }
  48.        
  49.        
  50.         int xx=ss1.length-1;
  51.         int yy=ss2.length-1;
  52.         String wyn="";
  53.         System.out.println(xx + " " + yy);
  54.        // System.out.println(m+1 + " " + n+1);
  55.        
  56.         if(ss1[xx].equals(ss2[yy])) wyn+=ss2[yy];
  57.         while(xx!=0 && yy!=0)
  58.         {
  59.            
  60.            
  61.             if(xx-1>=0 && C[xx-1][yy]==C[xx][yy]) { xx=xx-1; continue; }
  62.             if(yy-1>=0 && C[xx][yy-1]==C[xx][yy]) { yy=yy-1; continue; }
  63.             xx--; yy--; wyn+=ss2[yy];
  64.            
  65.            
  66.         }
  67.        
  68.          
  69.         System.out.println(wyn);
  70.         for(int i=wyn.length()-1; i>=0; i--) System.out.println(wyn.charAt(i));
  71.         for(int i=wyn.length()-1; i>=0; i--) out.print(wyn.charAt(i)+ " ");
  72.         out.println();
  73.         out.print(lc);
  74.         out.close();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement