#include<stdio.h> #include<string.h> int n,m,k,i,j,minN,a[10003]; main() { while(~scanf("%d",&n)) { memset(a,0,sizeof(a)); minN=0x7ffffff,m=0,j=0; for(i=0;i<n;i++)scanf("%d",&k),minN=minN<k?minN:k,a[k]==0?m++:0,a[k]++; if(m==1)printf("NO\n"); else if(m==2)printf(minN+1<=10000&&a[minN]==a[minN+1]?"YES\n":"NO\n"); else { for(i=1;i<=m-2;i++) if(a[minN+i]>a[minN+i-1])a[minN+i]-=a[minN+i-1]; else{j=1;break;} if(j)printf("NO\n"); else printf(a[minN+i]==a[minN+i-1]?"YES\n":"NO\n"); } } }
转载于:https://www.cnblogs.com/dokc/archive/2012/10/18/2729422.html