project_euler.problem_587.sol1 ============================== .. py:module:: project_euler.problem_587.sol1 .. autoapi-nested-parse:: Project Euler Problem 587: https://projecteuler.net/problem=587 A square is drawn around a circle as shown in the diagram below on the left. We shall call the blue shaded region the L-section. A line is drawn from the bottom left of the square to the top right as shown in the diagram on the right. We shall call the orange shaded region a concave triangle. It should be clear that the concave triangle occupies exactly half of the L-section. Two circles are placed next to each other horizontally, a rectangle is drawn around both circles, and a line is drawn from the bottom left to the top right as shown in the diagram below. This time the concave triangle occupies approximately 36.46% of the L-section. If n circles are placed next to each other horizontally, a rectangle is drawn around the n circles, and a line is drawn from the bottom left to the top right, then it can be shown that the least value of n for which the concave triangle occupies less than 10% of the L-section is n = 15. What is the least value of n for which the concave triangle occupies less than 0.1% of the L-section? Functions --------- .. autoapisummary:: project_euler.problem_587.sol1.circle_bottom_arc_integral project_euler.problem_587.sol1.concave_triangle_area project_euler.problem_587.sol1.solution Module Contents --------------- .. py:function:: circle_bottom_arc_integral(point: float) -> float Returns integral of circle bottom arc y = 1 / 2 - sqrt(1 / 4 - (x - 1 / 2) ^ 2) >>> circle_bottom_arc_integral(0) 0.39269908169872414 >>> circle_bottom_arc_integral(1 / 2) 0.44634954084936207 >>> circle_bottom_arc_integral(1) 0.5 .. py:function:: concave_triangle_area(circles_number: int) -> float Returns area of concave triangle >>> concave_triangle_area(1) 0.026825229575318944 >>> concave_triangle_area(2) 0.01956236140083944 .. py:function:: solution(fraction: float = 1 / 1000) -> int Returns least value of n for which the concave triangle occupies less than fraction of the L-section >>> solution(1 / 10) 15