import java.util.*;
//1~9至少要出现1次,至多出现n/9次或者n/9 +1次。其中n/9 +1次是去掉1~9整体出现次数后余下来的数字出现次数。
//所以当遍历数组后,但凡1~9中有一个数出现次数不是n/9或者n/9 +1次,输出NO。
public class Main {
    public static void main(String[] args) {
        //1~9各个数字出现次数要不是n/9,要不是n/9 +1,其他次数就是no
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] count  = new int[10];

        //用桶排序来计数
        for(int i=0 ; i<n; i++){
            int num = in.nextInt();
            count[num]++;
        }
	  //最少出现次数
        int minCount = n/9;
	  //最多出现次数
        int maxCount = minCount+1;
        boolean flag = true;

        for(int i=1;i<=9;i++){
            if(count[i]<minCount||count[i]>maxCount){
                flag = false;
                break;
            }
        }
       System.out.println(flag ? "YES" : "NO");
}
}