#include<bits/stdc++.h>

using namespace std;

int n,a[100010],cnt[100010],k,k1,k2;

int main()
{
	scanf("%d",&n);
	for(int i=1; i<=n; i++)
	{
		scanf("%d",&a[i]);
		cnt[a[i]]++;
		if(k1==0)k1=a[i];
		if(k2==0)k2=a[i];
		if(cnt[a[i]]==1)k++;
	}
	if(k>2)printf("No");
	else if(abs(k1-k2)>1)printf("No");
	else
	{
		if(k==1)
		{
			if(n/a[1]>1)printf("Yes");
			else if(n==a[1]+1)printf("Yes");
			else printf("No");
		}
		else
		{
			if(k1>k2)swap(k1,k2);
			int x=0;
			for(int i=1; i<=n; i++)
			{
				if(a[i]==k1)x++;
			}
			if(x+1==k2&&k2<n)printf("Yes");
			else printf("No");
		}
	}
	return 0;
}