Advertisement
HeatPulse

LAB3-3 suma od apsolutni razliki(tip kolokviumska)

Nov 2nd, 2019
473
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 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. static int solve(int numbers[], int N, int K) {
  7. int k = 2;
  8. int j, i;
  9. int [][] maxabs = new int[K+1][N];
  10.  
  11. while(k <= K){
  12. for(j = k-1 ; j < N; j++){
  13. for(i = 0; i < j; i++ ){
  14. int abs = Math.abs(numbers[i] - numbers[j]) + maxabs[k-1][i];
  15. if(abs > maxabs[k][j])
  16. maxabs[k][j] = abs;
  17. }
  18. }
  19. k++;
  20. }
  21. int max = 0;
  22. for(i = 0; i < N; i++){
  23. if(maxabs[K][i] > max)
  24. max = maxabs[K][i];
  25. }
  26.  
  27.  
  28. return max;
  29. }
  30.  
  31. public static void main(String[] args) throws Exception {
  32. int i,j,k;
  33.  
  34. BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  35. StringTokenizer st = new StringTokenizer(br.readLine());
  36. int N = Integer.parseInt(st.nextToken());
  37. int K = Integer.parseInt(st.nextToken());
  38.  
  39. int numbers[] = new int[N];
  40.  
  41. st = new StringTokenizer(br.readLine());
  42. for (i=0;i<N;i++) {
  43. numbers[i] = Integer.parseInt(st.nextToken());
  44. }
  45.  
  46. int res = solve(numbers, N, K);
  47. System.out.println(res);
  48.  
  49. br.close();
  50.  
  51. }
  52.  
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement