#include #include #include using namespace atcoder; using mint = modint998244353; using namespace std; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 1000000000000000001 int main(){ int n; cin>>n; vector> a(100001); for(int i=1;i<=100000;i++){ for(int j=i;j<=100000;j+=i)a[j].push_back(i); } vector x(n); rep(i,n)cin>>x[i]; vector dp(100001,0); rep(i,n){ int s = 0; rep(j,a[x[i]].size()){ s = max(s,dp[a[x[i]][j]]); } dp[x[i]] = max(dp[x[i]],s+1); } int ans = 0; rep(i,dp.size())ans = max(ans,dp[i]); cout<