結果
問題 |
No.2709 1975 Powers
|
ユーザー |
![]() |
提出日時 | 2024-04-01 02:54:33 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 820 ms / 2,000 ms |
コード長 | 720 bytes |
コンパイル時間 | 311 ms |
コンパイル使用メモリ | 82,480 KB |
実行使用メモリ | 139,072 KB |
最終ジャッジ日時 | 2024-09-30 21:41:47 |
合計ジャッジ時間 | 10,461 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 25 |
ソースコード
from itertools import combinations N, P, Q = map(int, input().split()) A = list(map(int, input().split())) A.sort() m = max(A) + 1 m10 = [1] * m m9 = [1] * m m7 = [1] * m m5 = [1] * m for i in range(1, m): m10[i] = m10[i-1] * 10 % P m9[i] = m9[i-1] * 9 % P m7[i] = m7[i-1] * 7 % P m5[i] = m5[i-1] * 5 % P ans = 0 na = len(A) for a in range(na): for b in range(a+1, na): for c in range(b+1, na): for d in range(c+1, na): x = m10[A[a]] + m9[A[b]] + m7[A[c]] + m5[A[d]] if x % P == Q: ans += 1 # for a, b, c, d in combinations(A, 4): # x = m10[a] + m9[b] + m7[c] + m5[d] # if x % P == Q: # ans += 1 print(ans)