結果
問題 |
No.390 最長の数列
|
ユーザー |
![]() |
提出日時 | 2021-01-25 22:05:04 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,433 ms / 5,000 ms |
コード長 | 627 bytes |
コンパイル時間 | 411 ms |
コンパイル使用メモリ | 82,012 KB |
実行使用メモリ | 91,336 KB |
最終ジャッジ日時 | 2024-06-22 18:40:13 |
合計ジャッジ時間 | 9,209 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 15 |
ソースコード
# coding:UTF-8 import sys MOD = 10 ** 9 + 7 INF = float('inf') N = int(input()) # 数字 X = list(map(int, input().split())) # スペース区切り連続数字 X.sort() mp = {} # 約数列挙 def divisorList(a): l = [] for i in range(1, int(a**0.5)+1): if a % i == 0: l.append(i) ii = a // i if i != ii: l.append(ii) return sorted(l) res = 0 for x in X: d = divisorList(x) t = 0 for n in d: if n in mp and mp[n] > t: t = mp[n] mp[x] = t + 1 if mp[x] > res: res = mp[x] print("{}".format(res))