#include using namespace std; long longestSequence(vector a) { // Return the length of the longest possible sequence of moves. long n = *max_element(a.begin(), a.end()); vector dp(n+1, 1); for(int i = 2; i <= n; i++){ for(int j = 2; j <= i; j++) if(i % j == 0) dp[i] = max(dp[i], j*dp[i/j]+1); } long res = 0; for(int i = 0; i < a.size(); i++) res += dp[a[i]]; return res; } int main() { int n; cin >> n; vector a(n); for(int a_i = 0; a_i < n; a_i++){ cin >> a[a_i]; } long result = longestSequence(a); cout << result << endl; return 0; }