n,*a = map(int,open(0).read().split()) M = 300005 r,c = [0]*M, [0]*M for v in a: if c[v] <= r[v]: for w in range(v*2,M,v): r[w] = max(r[w],r[v]+1) c[v] = r[v]+1 print(max(c))