結果
問題 |
No.2218 Multiple LIS
|
ユーザー |
|
提出日時 | 2023-02-18 18:03:24 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 388 ms / 3,000 ms |
コード長 | 395 bytes |
コンパイル時間 | 199 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 106,576 KB |
最終ジャッジ日時 | 2024-07-20 03:03:33 |
合計ジャッジ時間 | 10,750 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 39 |
ソースコード
N = int(input()) A = list(map(int,input().split())) C = 10 ** 5 + 5 div = [[1] for _ in range(C)] div[1] = [] for i in range(2,C): for j in range(i + i,C,i): div[j].append(i) d = dict() d[1] = 0 for a in A: if a not in d: d[a] = 0 else: d[a] += 1 for u in div[a]: if u in d: d[a] = max(d[a],d[u] + 1) print(max(d.values())) #print(d)