Advertisement
EvgeniiKraaaaaaaav

task1

Aug 11th, 2020
1,384
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.96 KB | None | 0 0
  1. import java.util.Arrays;
  2.  
  3. import static java.util.stream.Collectors.toList;
  4. import static java.util.stream.IntStream.of;
  5.  
  6. public class FirstSteps {
  7.  
  8.     public static void main(String[] args) {
  9.         System.out.println("Hello world!");
  10.     }
  11.  
  12.     public int sum(int x, int y) {
  13.         return x + y;
  14.     }
  15.  
  16.     public int mul(int x, int y) {
  17.         return x * y;
  18.     }
  19.  
  20.     public int div(int x, int y) {
  21.         return x / y;
  22.     }
  23.  
  24.     public int mod(int x, int y) {
  25.         return x % y;
  26.     }
  27.  
  28.     public boolean isEqual(int x, int y) {
  29.         return x == y;
  30.     }
  31.  
  32.     public boolean isGreater(int x, int y) {
  33.         return x > y;
  34.     }
  35.  
  36.     public boolean isInsideRect(int xLeft, int yTop, int xRight, int yBottom, int x, int y) {
  37.         return (x >= xLeft) && (y >= yTop) && (x <= xRight) && (y <= yBottom);
  38.     }
  39.  
  40.     public int sum(int[] array) {
  41.         return array.length > 0 ?
  42.                 of(array)
  43.                         .sum() : 0;
  44.     }
  45.  
  46.     public int mul(int[] array) {
  47.         return array.length > 0 ?
  48.                 of(array)
  49.                         .reduce((firstMultiplier, secondMultiplier) -> firstMultiplier * secondMultiplier)
  50.                         .getAsInt() : 0;
  51.     }
  52.  
  53.     public int min(int[] array) {
  54.         return array.length > 0 ?
  55.                 of(array)
  56.                         .summaryStatistics()
  57.                         .getMin() : Integer.MAX_VALUE;
  58.     }
  59.  
  60.     public int max(int[] array) {
  61.         return array.length > 0 ?
  62.                 of(array)
  63.                         .summaryStatistics()
  64.                         .getMax(): Integer.MIN_VALUE;
  65.     }
  66.  
  67.     public double average(int [] array) {
  68.         return array.length > 0 ?
  69.                 of(array)
  70.                         .summaryStatistics()
  71.                         .getAverage(): 0;
  72.     }
  73.  
  74.     public boolean isSortedDescendant(int[] array) {
  75.  
  76.         if (array.length > 0) {
  77.  
  78.             int[] sortedDescendantArray = Arrays.copyOf(array,array.length);
  79.             Arrays.sort(sortedDescendantArray);
  80.  
  81.             for (int index = 0; index < sortedDescendantArray.length / 2; index++) {
  82.  
  83.                 int temp = sortedDescendantArray[index];
  84.  
  85.                 sortedDescendantArray[index] = sortedDescendantArray[sortedDescendantArray.length - 1 - index];
  86.                 sortedDescendantArray[sortedDescendantArray.length - 1 - index] = temp;
  87.             }
  88.  
  89.             for (int index = 0; index < sortedDescendantArray.length - 1; index++) {
  90.  
  91.                 if (!isGreater(sortedDescendantArray[index], sortedDescendantArray[index + 1])) {
  92.                     return false;
  93.                 }
  94.             }
  95.  
  96.             return Arrays.equals(sortedDescendantArray, array);
  97.         }
  98.  
  99.         return true;
  100.     }
  101.  
  102.     public void cube(int[] array) {
  103.         for (int index = 0; index < array.length; index++) {
  104.             array[index] = (int) Math.pow(array[index], 3);
  105.         }
  106.     }
  107.  
  108.     public boolean find(int[]array, int value) {
  109.         return of(array)
  110.                 .boxed()
  111.                 .collect(toList()).contains(value);
  112.     }
  113.  
  114.     public void reverse(int[]array) {
  115.  
  116.         for (int currentIndex = 0; currentIndex < array.length / 2; currentIndex++) {
  117.  
  118.             int tempElement = array[currentIndex];
  119.  
  120.             array[currentIndex] = array[array.length - 1 - currentIndex];
  121.             array[array.length - 1 - currentIndex] = tempElement;
  122.         }
  123.  
  124.     }
  125.  
  126.     public boolean isPalindrome(int[] array) {
  127.  
  128.         if (array.length == 0) {
  129.             return true;
  130.         }
  131.  
  132.         int[] reverseArray = Arrays.copyOf(array, array.length);
  133.         reverse(reverseArray);
  134.  
  135.         return Arrays.equals(array, reverseArray);
  136.     }
  137.  
  138.     public int sum(int[][] matrix) {
  139.        
  140.         int sum = 0;
  141.  
  142.         for (int[] line: matrix) {
  143.             sum += of(line)
  144.                     .sum();
  145.         }
  146.        
  147.         return sum;
  148.     }
  149.  
  150.     public int max(int[][] matrix) {
  151.  
  152.         if (Arrays.deepEquals(matrix, new int[matrix.length][matrix[0].length])) {
  153.             return Integer.MIN_VALUE;
  154.         }
  155.  
  156.         int max = matrix[0][0];
  157.  
  158.         for (int[] line: matrix) {
  159.             max = Math.max(max, max(line));
  160.         }
  161.  
  162.         return max;
  163.     }
  164.  
  165.     public int diagonalMax(int[][] matrix) {
  166.  
  167.         if (Arrays.deepEquals(matrix, new int[matrix.length][matrix[0].length])) {
  168.             return Integer.MIN_VALUE;
  169.         }
  170.  
  171.         int max = matrix[0][0];
  172.         for (int lineIndex = 0, columnIndex = 0; lineIndex < matrix.length && columnIndex < matrix[lineIndex].length; lineIndex++, columnIndex++) {
  173.             max = Math.max(max, matrix[lineIndex][columnIndex]);
  174.         }
  175.  
  176.         return max;
  177.     }
  178.  
  179.     public boolean isSortedDescendant(int[][] matrix) {
  180.  
  181.         for (int[] line: matrix) {
  182.  
  183.             if (!isSortedDescendant(line)) {
  184.                 return  false;
  185.             }
  186.         }
  187.  
  188.         return true;
  189.     }
  190.  
  191. }
  192.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement