#include<iostream>
#include<cmath>
using namespace std;
int Prime(int n)
{
for(int i=2;i<sqrt(n);i++)
{
if(n%i==0)
{
return 0;
}
}
return 1;
}
int Solution()
{
long long int a,b;
cin>>a>>b;
if((a-b==1)&&(Prime(a+b)==1))
{
cout<<"YES"<<endl;
}
else
{
cout<<"NO"<<endl;
}
return 0;
}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
Solution();
}
return 0;
}
我的思路:a2−b2=(a+b)(a−b), 又因为(a+b)>(a−b), 所以只有当a-b=1 \ \color{Red}{and}$$\ a+b是素数时,a2−b2是素数。