def gcd(x,y): while x%y: x,y=y,x%y return y n=int(input()) a=list(map(int,input().split()));s=set() for i in a: for j in range(1,int(i**0.5)+1): if i%j: continue s.add(j) s.add(i//j) x={};p=0 m=len(s) s=list(s);s.sort() for i in s: x[i]=p;p+=1 dp=[0]*m for i in a: for j in range(m): if not dp[j]: continue dp[x[gcd(i,s[j])]]+=dp[j] dp[x[i]]+=1 print(dp[0])