#include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N; cin >> N; vector X(N); for (auto&& e : X) { cin >> e; } sort(X.begin(), X.end(), greater()); vector T(X.front() + 1, 0); for (int i = 0; i < N; i++) { int c = 0; for (int j = 2 * X[i]; j < X.front() + 1; j += X[i]) { c = max(c, T[j]); } T[X[i]] = c + 1; } cout << *max_element(T.begin(), T.end()) << '\n'; return 0; }