3785 - AI
De la Universitas MediaWiki
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
#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))