#include using namespace std; const int N=1e5+10; int f[N]; int n,x,ans; int main(){ scanf("%d",&n); for (int i=1;i<=n;i++){ scanf("%d",&x); int t=0; for (int j=1;j*j<=x;j++) if (x%j==0){ t=max(t,max(f[j],f[x/j])); } f[x]=t+1; ans=max(ans,t+1); } printf("%d\n",ans); }