結果
| 問題 |
No.2709 1975 Powers
|
| コンテスト | |
| ユーザー |
graythunder1
|
| 提出日時 | 2024-08-24 02:09:42 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,217 ms / 2,000 ms |
| コード長 | 646 bytes |
| コンパイル時間 | 368 ms |
| コンパイル使用メモリ | 82,368 KB |
| 実行使用メモリ | 219,008 KB |
| 最終ジャッジ日時 | 2024-08-24 02:10:01 |
| 合計ジャッジ時間 | 17,246 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 25 |
ソースコード
N, P, Q = map(int, input().split(" "))
A = sorted(list(map(int, input().split(" "))))
def mod_pow(a, n):
res = 1
while n > 0:
if n & 1:
res = res * a % P
a = a * a % P
n >>= 1
return res
dval_cnt = [[0 for _ in range(P)] for _ in range(N)]
for n in range(N):
dval = mod_pow(5, A[n])
for k in range(n+1):
dval_cnt[k][dval] += 1
ans = 0
for ai in range(N-3):
for bi in range(ai+1, N-2):
for ci in range(bi+1, N-1):
abcval = (mod_pow(10, A[ai]) + mod_pow(9, A[bi]) + mod_pow(7, A[ci])) % P
ans += dval_cnt[ci+1][(Q - abcval) % P]
print(ans)
graythunder1