Số nguyên tố là một chủ đề thú vị để các thầy cô giáo dạy Tin học khai thác và tạo ra
những bài toán liên quan để đố các bạn học sinh giỏi.
Nhắc lại: Số nguyên tố là số nguyên dương có chính xác hai ước là 1 và chính nó.
Với đề thi lần này, các em phải kiểm tra hiệu b 2 – a 2 có phải là số nguyên tố hay
không?
Dữ liệu vào:
Dòng đầu tiên chứa giá trị t (1 ≤ t ≤ 10) là số cặp a, b
t dòng tiếp theo, mỗi dòng chứa hai số nguyên dương a và b.
Kết quả ra:
Gồm t dòng, mỗi dòng chứa thông báo "YES" nếu hiệu b 2 – a 2 là số nguyên tố,
hoặc thông báo "NO" trong trường hợp ngược lại
Ví dụ:
INPUT OUTPUT
2
5 6
4 8
YES
NO
Ràng buộc:
Subtask1: 60% số test tương ứng với số điểm có 1 ≤ a ≤ b ≤ 100
Subtask2: 20% số test tương ứng với số điểm có 1 ≤ a ≤ b ≤ 10 9 và b – a <=10 5
Subtask3: 20% số test tương ứng với số điểm có 1 ≤ a ≤ b ≤ 10 14
const fi='snt.inp'
fo='snt.out'
var f1,f2:text;
n,i:integer;
a,b:array[1..100]of integer;
{-----------------ham-kiem-tra-so-nguyen-to-------------------------}
function ktra(x:integer):boolean;
var kt:boolean;
i:integer;
begin
kt:=true;
for i:=2 to x-1 do
if x mod i=0 then kt:=false;
if kt=true then ktra:=true
else ktra:=false;
end;
{---------------------chuong-trinh-chinh---------------------}
begin
assign(f1,fi); reset(f1);
assign(f2,fo); rewrite(f2);
readln(f1,n);
for i:=1 to n do
readln(f1,a[i],b[i]);
for i:=1 to n do
if ktra(a[i]-b[i])=true then writeln(f2,'YES')
else writeln(f2,'NO');
close(f1);
close(f2);
end.