#!/bin/python3 import sys def longestSequence(A): # Return the length of the longest possible sequence of moves. def get_all_primes(N): def is_prime(n): for p in primes: if n % p == 0: return False if p*p > n: break return True primes = [2,3,5,7,11,13,17,19] for i in range(23,N): if is_prime(i): primes.append(i) return primes from collections import Counter primes = get_all_primes(1000000) prime_set = set(primes) ret = 0 for a in A: if a == 1: ret += 1 continue if a in prime_set: ret += 1+a continue cnt = Counter() tmp = a for p in primes: if p*p > a: break while tmp > 1 and tmp % p == 0: cnt[p] += 1 tmp //= p if tmp in prime_set: cnt[tmp] += 1 break elif tmp == 1: break ps = list(cnt.keys()) ps.reverse() r = 1 s = 1 for p in ps: while cnt[p] > 0: s *= p r += s cnt[p] -= 1 ret += r return ret if __name__ == "__main__": n = int(input().strip()) a = list(map(int, input().strip().split(' '))) result = longestSequence(a) print(result)