project_euler.problem_190.sol1 ============================== .. py:module:: project_euler.problem_190.sol1 .. autoapi-nested-parse:: Project Euler Problem 190: https://projecteuler.net/problem=190 Maximising a Weighted Product Let S_m = (x_1, x_2, ..., x_m) be the m-tuple of positive real numbers with x_1 + x_2 + ... + x_m = m for which P_m = x_1 * x_2^2 * ... * x_m^m is maximised. For example, it can be verified that |_ P_10 _| = 4112 (|_ _| is the integer part function). Find Sum_{m=2}^15 = |_ P_m _|. Solution: - Fix x_1 = m - x_2 - ... - x_m. - Calculate partial derivatives of P_m wrt the x_2, ..., x_m. This gives that x_2 = 2 * x_1, x_3 = 3 * x_1, ..., x_m = m * x_1. - Calculate partial second order derivatives of P_m wrt the x_2, ..., x_m. By plugging in the values from the previous step, can verify that solution is maximum. Functions --------- .. autoapisummary:: project_euler.problem_190.sol1.solution Module Contents --------------- .. py:function:: solution(n: int = 15) -> int Calculate sum of |_ P_m _| for m from 2 to n. >>> solution(2) 1 >>> solution(3) 2 >>> solution(4) 4 >>> solution(5) 10