Module org.maxicp

Class NumberUtils

java.lang.Object
org.maxicp.util.NumberUtils

public class NumberUtils extends Object
  • Constructor Details

    • NumberUtils

      public NumberUtils()
  • Method Details

    • isPerfectSquare

      public static boolean isPerfectSquare(int n)
    • negativeProduct

      public static boolean negativeProduct(int v1, int v2)
    • positiveProduct

      public static boolean positiveProduct(int v1, int v2)
    • ceilDiv

      public static int ceilDiv(int v1, int v2)
      Parameters:
      v1 -
      v2 - != 0
      Returns:
      ceil(v1/v2)
    • floorDiv

      public static int floorDiv(int v1, int v2)
      Parameters:
      v1 -
      v2 - != 0
      Returns:
      floor(v1/v2)
    • minCeilDiv

      public static int minCeilDiv(int c, int... vals)
      Parameters:
      c - != 0
      vals - different from 0
      Returns:
      min(ceil(c/v)) with v in vals
    • maxFloorDiv

      public static int maxFloorDiv(int c, int... vals)
      Parameters:
      c - != 0
      vals - different from 0
      Returns:
      max(floor(c/v)) with v in vals
    • overFlowMul

      public static boolean overFlowMul(int a, int b)
      Parameters:
      a -
      b -
      Returns:
      true if a*b generates an overflow
    • safeMul

      public static int safeMul(int a, int b)
      Parameters:
      a -
      b -
      Returns:
      a*b (rounded to Integer.MAX_VALUE /Integer.MIN_VALUE in case of overflow)