#include<algorithm>
#include<cmath>
#include<vector>
#include<math.h>
#include<string>
#include<ctype.h>
using namespace std;
# define MAX 100000
int isprime(int n)
{
int m =min(50000,n);
for(int i=2;i*i <= m;i++)
if(n%i ==0 )
return 0;
return 1;
}
int a[MAX];
int main(){
int n, k;
while(cin >> n >> k){
for(int i = 1; i <= n; i++) cin >> a[i];
sort(a+1,a+n+1);
int low=a[n-k+1]-a[k];
//cout<< low <<endl;
if(isprime(low) && low >1) cout<<"YES"<<endl;
else cout << "NO" << endl;
cout << low << endl;
}
return 0;
}
注意要改变判断素数的范围