#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n;
  scanf("%lld", &n);
  ;
  vector<long long> vc;
  for (long long i = 0; i < n; i++) {
    long long x;
    scanf("%lld", &x);
    vc.push_back(x);
  }
  sort(vc.begin(), vc.end());
  long long g = vc[0];
  for (long long i = 0; i < n; i++) {
    if (vc[i] % g == 0) continue;
    while (1) {
      long long tmp = g;
      g = vc[i] % g;
      vc[i] = tmp;
      if (vc[i] % g == 0) break;
    }
  }
  long long cnt = 0;
  long long tm = sqrt(g);
  for (long long i = 1; i <= tm; i++) {
    if (g % i == 0) {
      cnt++;
      if (g / i != i) {
        cnt++;
      }
    }
  }
  printf("%lld\n", cnt);
  return 0;
}
