結果
問題 | No.1632 Sorting Integers (GCD of M) |
ユーザー |
|
提出日時 | 2022-03-02 10:23:36 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 47 ms / 2,000 ms |
コード長 | 593 bytes |
コンパイル時間 | 340 ms |
コンパイル使用メモリ | 82,232 KB |
実行使用メモリ | 53,852 KB |
最終ジャッジ日時 | 2024-07-16 04:40:59 |
合計ジャッジ時間 | 5,017 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 59 |
ソースコード
N = int(input()) c = list(map(int,input().split())) import sys def gcd(a,b): if b == 0:return a while True: r = a % b a = b b = r if r == 0: return a d = 0 for i in range(9): for j in range(i+1,9): if c[i] and c[j]: d = gcd(d,j-i) P = 10 ** 9 + 7 if d == 0: d = P else: d *= 9 * 9 keta = 0 amari = 0 for i in range(9): if c[i] == 0:continue amari = (amari + pow(10,keta,d) * (pow(10,c[i],d)-1)%d*(i+1)) % d keta += c[i] if d == P: print(amari*pow(9,P-2,P)%P) else: print(gcd(d,amari)//9)