結果
| 問題 |
No.741 AscNumber(Easy)
|
| コンテスト | |
| ユーザー |
manini
|
| 提出日時 | 2021-01-26 11:59:56 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 39 ms / 2,000 ms |
| コード長 | 840 bytes |
| コンパイル時間 | 752 ms |
| コンパイル使用メモリ | 82,304 KB |
| 実行使用メモリ | 52,480 KB |
| 最終ジャッジ日時 | 2024-06-23 11:42:56 |
| 合計ジャッジ時間 | 3,844 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 55 |
ソースコード
# coding:UTF-8
import sys
MOD = 10 ** 9 + 7
INF = float('inf')
# 拡張ユークリッド互除法
# ax + by = g
def extGcd(a, b):
if b == 0:
return [a, 1, 0]
else:
g, x, y = extGcd(b, a%b)
return [g, int(y), int(x - (a // b) * y)]
# 逆元
def inv(a):
r = extGcd(a, MOD)
return r[1] % MOD
def comb(n, k):
if n < k:
return 0
elif n < 0 or k < 0:
return 0
a = 1
for i in range(k):
a = a * (n - i) % MOD
b = 1
for i in range(1, k+1):
b = b * i % MOD
binv = inv(b)
return (a * binv) % MOD
N = int(input()) # 数字
res = 1
for i in range(1, 10):
t = comb(9, i)
# t2 = 0
# for j in range(1, N+1):
# t2 = (t2 + comb(j-1, i-1, f)) % MOD
t2 = comb(N, i)
res = (res + t * t2) % MOD
print("{}".format(res))
manini