結果
問題 | No.1127 変形パスカルの三角形 |
ユーザー | tonnnura172 |
提出日時 | 2020-08-02 19:31:20 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
AC
|
実行時間 | 1,049 ms / 1,500 ms |
コード長 | 1,352 bytes |
コンパイル時間 | 91 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 89,520 KB |
最終ジャッジ日時 | 2024-07-19 06:01:57 |
合計ジャッジ時間 | 30,865 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 688 ms
89,344 KB |
testcase_01 | AC | 1,049 ms
89,336 KB |
testcase_02 | AC | 950 ms
89,344 KB |
testcase_03 | AC | 885 ms
89,288 KB |
testcase_04 | AC | 730 ms
89,440 KB |
testcase_05 | AC | 865 ms
89,396 KB |
testcase_06 | AC | 1,023 ms
89,436 KB |
testcase_07 | AC | 787 ms
89,344 KB |
testcase_08 | AC | 777 ms
89,292 KB |
testcase_09 | AC | 992 ms
89,228 KB |
testcase_10 | AC | 985 ms
89,284 KB |
testcase_11 | AC | 929 ms
89,336 KB |
testcase_12 | AC | 898 ms
89,456 KB |
testcase_13 | AC | 889 ms
89,280 KB |
testcase_14 | AC | 858 ms
89,452 KB |
testcase_15 | AC | 772 ms
89,440 KB |
testcase_16 | AC | 859 ms
89,344 KB |
testcase_17 | AC | 790 ms
89,336 KB |
testcase_18 | AC | 922 ms
89,520 KB |
testcase_19 | AC | 972 ms
89,232 KB |
testcase_20 | AC | 963 ms
89,460 KB |
testcase_21 | AC | 923 ms
89,344 KB |
testcase_22 | AC | 772 ms
89,448 KB |
testcase_23 | AC | 967 ms
89,344 KB |
testcase_24 | AC | 873 ms
89,336 KB |
testcase_25 | AC | 938 ms
89,340 KB |
testcase_26 | AC | 958 ms
89,460 KB |
testcase_27 | AC | 964 ms
89,300 KB |
testcase_28 | AC | 967 ms
89,440 KB |
testcase_29 | AC | 763 ms
89,472 KB |
testcase_30 | AC | 735 ms
89,380 KB |
testcase_31 | AC | 992 ms
89,436 KB |
ソースコード
import sys, re from collections import deque, defaultdict, Counter from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians, gcd, log2 from itertools import accumulate, permutations, combinations, product from operator import itemgetter, mul, add from copy import deepcopy from string import ascii_lowercase, ascii_uppercase, digits from bisect import bisect, bisect_left from heapq import heappush, heappop from functools import reduce, lru_cache def input(): return sys.stdin.buffer.readline()[:-1] def INT(): return int(input()) def MAP(): return map(int, input().split()) def LIST(): return list(map(int, input().split())) def ZIP(n): return zip(*(MAP() for _ in range(n))) sys.setrecursionlimit(10 ** 9) INF = float('inf') mod = 10 ** 9 + 7 a, b = MAP() N, K = MAP() lim = 10**6 # 必要そうな階乗の限界を入れる fact = [1] * (lim+1) fact_inv = [1] * (lim+1) for n in range(1, lim+1): fact[n] = (fact[n-1] * n) % mod fact_inv[lim] = pow(fact[lim], mod-2, mod) for n in range(lim, 0, -1): fact_inv[n-1] = (n * fact_inv[n]) % mod def C(n, r): return (((fact[n] * fact_inv[r]) % mod) * fact_inv[n-r]) % mod ans = a*C(N-1, K-1)*(K!=N+1) + b*C(N-1, K-2)*(K!=1) print(ans%mod) ans2 = 0 for k in range(1, N+2): tmp = a*C(N-1, k-1)*(k!=N+1) + b*C(N-1, k-2)*(k!=1) ans2 += tmp**2 ans2 %= mod print(ans2)