#include <math.h>

// false -> 0
// true -> 1
int isPrime_new(int n)
{
  if (n <= 1)
    return 0;
  if (n <= 3)
    return 1;
  if (n % 2 == 0)
    return 0;
  int square_root = sqrt(n);
  for (int i = 3; i <= square_root; i += 2)
    if (n % i == 0)
      return 0;
  return 1;
}


int main()
{
  int n;
  scanf("%d", &n);
  int a[n], i, j;
  for (i = 0; i < n; i++)
    scanf("%d", &a[i]);
  
  int cnt = 0;
  int flg;
  for (i = 0; i < n; i++)
  {
    flg = 0;
    if (isPrime_new(a[i]) == 1)
      flg = 2;
    for (j = 0; ((j < n) && (flg == 0)); j++)
    {
      if (i == j)
        continue;
      if (a[i] % a[j] == 0)
      {
        flg = 1;
        break;
      }
    }
    if (flg == 0 || flg == 2)
      cnt++;
  }
  printf("%d", cnt);
}