import sys input = sys.stdin.readline import math N=int(input()) A=list(map(int,input().split())) DP=[0]*(max(A)+1) for x in (A): xr=math.ceil(math.sqrt(x)) LIST=[] for i in range(1,xr+1): if x%i==0: LIST.append(i) LIST.append(x//i) MAX=0 for i in LIST: if i!=x: MAX=max(MAX,DP[i]) DP[x]=MAX+1 print(max(DP))