code: def iroot(k, n):
      # Implements Newton Iroot algorithm
      # Details can be found here: https://www.akalin.com/computing-iroot
      # In a nutshell, it constructs a decreasing number series
      # that is guaranteed to terminate at the required integer root
      u, s = n, n + 1
      while u < s:
          s = u
          t = (k - 1) * s + n // pow(s, k - 1)
          u = t // k
      return s
  
file_path: GPyOpt/GPyOpt/experiment_design/grid_design.py
imports: import numpy
  from ..core.errors import InvalidConfigError
  from .base import ExperimentDesign
  from .random_design import RandomDesign
label_desc: Use image node_id 1 for calling a global function with example usage: iroot(k, n) and returns: s