#!/bin/python3 import sys primos = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71] def minimo_divisor(numero,divisor): x = 19 while numero>1: if numero % primos[x] ==0: if numero / primos[x] ==1: return minimo_divisor(numero/primos[x],divisor) return minimo_divisor(numero/primos[x],divisor*primos[x]) x-=1 return divisor def longestSequence(a, movments): # Return the length of the longest possible sequence of moves. if len(a)>0: elegido = a.pop() movments+=1 if elegido >1: if elegido in primos: min = elegido else: min = minimo_divisor(elegido, 1) num = elegido/min for x in range(0,int(min),1): a.append(num) return longestSequence(a,movments) return movments if __name__ == "__main__": n = int(input().strip()) a = list(map(int, input().strip().split(' '))) result = longestSequence(a,0) print(result)