#include using namespace std; int N; int dp[1000001]; int main() { scanf("%d", &N); while(N--) { int X; scanf("%d", &X); for(int j = 1; j * j <= X; j++) { if(X % j == 0) { dp[X] = max(dp[X], max(dp[j], dp[X / j]) + 1); } } } cout << *max_element(dp, dp + 1000001) << endl; }