Dev-san

Untitled

Oct 30th, 2014
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.38 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.InputStreamReader;
  3. import java.util.StringTokenizer;
  4.  
  5. public class SumOfAbsoluteDifferences {
  6.  
  7.     static int solve(int a[], int n, int k)
  8.     {
  9.         int[][] mat = new int[a.length][k];
  10.         int rez = 0;
  11.  
  12.         for (int i = 1; i < n; i++)
  13.         {
  14.             for (int j = 1; j < k; j++)
  15.             {
  16.                 for (int k1 = 0; k1 < i; k1++)
  17.                 {
  18.                     int raz = Math.abs(a[i] - a[k1]);
  19.                     if (mat[i][j] < mat[k1][j-1] + raz)
  20.                         mat[i][j] = mat[k1][j-1] + raz;
  21.                     //System.out.printf("%d - %d = %d\n", a[i], a[k1], raz);
  22.                 }
  23.                 //System.out.println("--------------------------------");
  24.                 if (mat[i][j] > rez) rez = mat[i][j];
  25.             }
  26.         }
  27.         /*
  28.         for (int i = 0; i < n; i++)
  29.         {
  30.             for (int j = 0; j < k; j++)
  31.                 System.out.print(mat[i][j] + " ");
  32.             System.out.println("");
  33.         }*/
  34.         return rez;
  35.     }
  36.  
  37.     public static void main(String[] args) throws Exception {
  38.         int i, j, k;
  39.  
  40.         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  41.         StringTokenizer st = new StringTokenizer(br.readLine());
  42.         int N = Integer.parseInt(st.nextToken());
  43.         int K = Integer.parseInt(st.nextToken());
  44.  
  45.         int numbers[] = new int[N];
  46.  
  47.         st = new StringTokenizer(br.readLine());
  48.         for (i = 0; i < N; i++) {
  49.             numbers[i] = Integer.parseInt(st.nextToken());
  50.         }
  51.  
  52.         int res = solve(numbers, N, K);
  53.         System.out.println(res);
  54.  
  55.         br.close();
  56.  
  57.     }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment