3785 - AI
Cerința
Să se afle valoarea expresiei E(n), modulo 1.000.000.007.
Date de intrare
Fișierul de intrare al.in conține pe prima linie numerele n, a, b, separate prin spațiu.
Date de ieșire
Fișierul de ieșire al.out va conține pe prima linie valoarea expresiei E(n), modulo 1.000.000.007.
Restricții și precizări
~ 1 ≤ n ≤ 10(12)
~ 1 ≤ a , b ≤ 20
Exemplu 1
- Intrare
- al.in
- 3 5 12
- Ieșire
- al.out
- 1918
Exemplu 2
- Intrare
- al.in
- 10 5 8
- Ieșire
- al.out
- 765450729
Rezolvare
<syntaxhighlight lang="python" line>
- 3785 - AI
import math
def calculate_E(n, a, b):
alpha = math.atan(a * b) result = 0 for k in range(1, n + 1): term = 2 * (a**2 + b**2) * k**2 * math.cos(k * alpha) result = (result + term) % 1000000007 return result
with open("al.in", "r") as file:
n, a, b = map(int, file.readline().split())
result = calculate_E(n, a, b)
with open("al.out", "w") as file:
file.write(str(result))
</syntaxhighlight>