Cần giúp gấp Yêu cầu: Hôm nay Hệ được thầy giáo dạy về chủ đề ước và bội của các số nguyên. Thầy giáo đố Hệ đếm được có bao nhiêu số có đúng 3 ước dương trong n số nguyên không âm thầy đã cho và treo thưởng 50k nếu Hệ làm được. Hệ rất phấn khích, nhưng mà cu cậu nghĩ mãi vẫn chưa ra cách làm. Các bạn hãy giúp Hệ lấy giải 50k của thầy giáo nhé. Dữ liệu: - Dòng 1 chứa số nguyên dương n (0 < n ≤ 106 ), - Dòng 2 chứa n số nguyên dương ai (0 < ai ≤ 1012 ). Kết quả: In ra n dòng, dòng thứ i ghi YES nếu ai có đúng 3 ước dương, còn ngược lại thì ghi NO. Ví dụ input 10 1 2 3 4 5 6 7 8 9 25 output NO NO NO YES NO NO NO NO YES YES
1 câu trả lời
const fi='input.inp';
fo='output.out';
var f1,f2:text;
i,n:longint;
a:array[0..10000] of longint;
function demuoc(m:longint):longint;
var dem,j:longint;
begin
dem:=0;
for j:=1 to m do
if m mod j=0 then dem:=dem+1;
demuoc:=dem;
end;
begin
assign(f1,fi);reset(f1);
assign(f2,fo);rewrite(f2);
read(f1,n);
for i:=1 to n do
read(f1,a[i]);
for i:=1 to n do
if demuoc(a[i])=3 then writeln(f2,'YES')
else writeln(f2,'NO');
close(f1);
close(f2);
end.
Câu hỏi trong lớp
Xem thêm