#include <bits/stdc++.h>
int n;
int tab[10][10];
int main() {
  int zero = 0;
  bool can = false;
  scanf("%d\n", &n);
  for (int i = 1; i <= n; i++) {
    int c = getchar() - 48;
    if (c > 0) {
      tab[(c + 2) / 3][(c - 1) % 3 + 1] = 1;
    } else
      zero = 1;
  }
  if (zero) {
    int i;
    for (i = 1; i <= 3 && !tab[1][i]; i++)
      ;
    if (i > 3) can = true;
  } else {
    int i;
    for (i = 1; i <= 3 && !tab[1][i]; i++)
      ;
    if (i > 3) can = true;
    for (i = 1; i <= 3 && !tab[i][1]; i++)
      ;
    if (i > 3) can = true;
    for (i = 1; i <= 3 && !tab[i][3]; i++)
      ;
    if (i > 3) can = true;
    for (i = 1; i <= 3 && !tab[3][i]; i++)
      ;
    if (i > 3) can = true;
    if (!can) {
      if (tab[3][1] == 0 && tab[3][2] == 1 && tab[3][3] == 0) {
        can = true;
      }
    }
  }
  if (can)
    printf("NO");
  else
    printf("YES");
}
