結果

問題 No.454 逆2乗和
ユーザー ukikagi
提出日時 2016-12-05 03:51:58
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 54 ms / 2,000 ms
コード長 513 bytes
コンパイル時間 88 ms
コンパイル使用メモリ 12,416 KB
実行使用メモリ 13,784 KB
最終ジャッジ日時 2024-11-30 02:42:50
合計ジャッジ時間 2,689 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

from functools import lru_cache

@lru_cache(maxsize = None)
def comb(n, k):
  if k == 0 or k == n:
    return 1
  else:
    return comb(n-1, k-1) + comb(n-1, k)

@lru_cache(maxsize = None)
def B(n):
  if n == 0:
    return 1
  else:
    return -sum(comb(n+1, k) * B(k) for k in range(0, n)) / (n+1)

def solve(x, N = 100, K = 100):
  S  = sum((x+n)**(-2) for n in range(1, N+1))
  S += 1/(x+N) - 0.5/(x+N)**2
  S += sum(B(2*k)*(x+N)**(-2*k-1) for k in range(1,K+1))
  return S

x = float(input())
print(solve(x))
0