#include <iostream>
#include <string>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <algorithm>
#include <math.h>
#include <cassert>
#define rep(i,n) for(int i = 0; i < n; ++i )
using namespace std;
using ll = long long;

ll gcd(ll a, ll b) { return b?gcd(b,a%b):a;}
int main() {
  int n;
  cin >> n;
  vector<int> a(n);
  rep(i,n) cin >> a[i];
  sort(a.begin(), a.end());
  map<int,int> m;
  auto f = [&](int i,int v){
    if(i>a[0]) return;
    if(m[i]==0) m[i] = v;
    m[i] = gcd(v,m[i]);
  };
  rep(i,n){
    for(int x=1;x*x<=a[i];++x){
      if(a[i]%x!=0) continue;
      f(x,a[i]);
      f(a[i]/x,a[i]);
    }
  }
  int ans = 0;
  for(auto&i:m) ans += i.first==i.second;
  cout << ans << endl;
}

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using P = pair<int,int>;
#define rep(i, n) for(int i = 0; i < n; i++)

int main()
{
    int n;
    cin >> n;
    cout << (n+100-1)/100 << endl;

    return 0;
}