Rolling Ellipse

An ellipse $E(a, b)$ is given at its initial position by equation:
$\frac {x^2} {a^2} + \frac {(y – b)^2} {b^2} = 1$
The ellipse rolls without slipping along the $x$ axis for one complete turn. Interestingly, the length of the curve generated by a focus is independent from the size of the minor axis:
$F(a,b) = 2 \pi \max(a,b)$

This is not true for the curve generated by the ellipse center. Let $C(a, b)$ be the length of the curve generated by the center of the ellipse as it rolls without slipping for one turn.

You are given $C(2, 4) \approx 21.38816906$.
Find $C(1, 4) + C(3, 4)$. Give your answer rounded to $8$ digits behind the decimal point in the form ab.cdefghij.

To solve this problem, we can calculate the values of `g(m, n)` and `G(N)` using the given formulas. Since `G(N)` depends on the values of `g(m, n)` for different pairs of `m` and `n`, we will start by defining a function to calculate `g(m, n)`.

“`python
MOD = 1000000007

def g(m, n):
return (m ^ n) + (m | n) + (m & n)
“`

Note that we have defined a constant `MOD` to take the modulo operation at every step to avoid integer overflow.

Next, we can define a function to calculate `G(N)` using a nested loop for the summation.

“`python
def G(N):
result = 0
for n in range(N + 1):
for k in range(n + 1):
result += g(k, n – k)
result %= MOD
return result
“`

Now, we can simply call the `G(N)` function with `N = 10**18` and print the result.

“`python
N = 10**18
result = G(N)
print(result)
“`

Remember to run the code with a Python interpreter capable of handling such large numbers efficiently, or consider using a library like `numpy` or `numba` for faster computations.

More Answers:
Smallest Prime Factor
Hilbert’s Blackout
First Sort I

Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded

Share:

Recent Posts

Don't Miss Out! Sign Up Now!

Sign up now to get started for free!