# n_iter * [ n_p ** 2 * (12.5 A + 23 M + 2.5 S + 1 D + 1 E) + n_p * (14.5 A - 2 M + 0.5 S + 1 D - 1 E) + n_obstacles * n_p * (12 A + 19 M + 1 S + 1 D + 1 E) ] def adds(n_iter: int, n_p: int, n_obs: int = 2) -> int: return int(n_iter * (n_p**2 * 12.5 + n_p * 14.5 + n_obs * n_p * 12)) def mults(n_iter: int, n_p: int, n_obs: int = 2) -> int: return int(n_iter * (n_p**2 * 23 + n_p * (-2) + n_obs * n_p * 19)) def divs(n_iter: int, n_p: int, n_obs: int = 2) -> int: return int(n_iter * (n_p**2 * 1 + n_p * 1 + n_obs * n_p * 1)) def sqrts(n_iter: int, n_p: int, n_obs: int = 2) -> int: return int(n_iter * (n_p**2 * 2.5 + n_p * 0.5 + n_obs * n_p * 1)) def exps(n_iter: int, n_p: int, n_obs: int = 2) -> int: return int(n_iter * (n_p**2 * 1 + n_p * (-1) + n_obs * n_p * 1)) def total(n_iter: int, n_p: int, n_obs: int = 2) -> int: return adds(n_iter, n_p, n_obs) + mults(n_iter, n_p, n_obs) + divs( n_iter, n_p, n_obs) + sqrts(n_iter, n_p, n_obs) + exps(n_iter, n_p, n_obs) * 30