n,k,fang:integer;
i,ans:longint;
function sushu(answer:integer):boolean;
var i:longint;
boo:boolean;
begin
boo:=true;
for i:=2 to trunc(sqrt(answer)) do
if answer mod i=0 then begin
boo:=false;
break;
end;
if (boo=true)and(answer>1) then exit(true)
else exit(false);
end;
procedure zuhe(ii,k1:integer);
var i:integer;
fi:boolean;
begin
if k1=k then begin
fi:=sushu(ans);
if fi=true then fang:=fang+1;
exit;
end;
for i:=ii to n do begin
ans:=ans+a[i];
k1:=k1+1;
zuhe(i+1,k1);
ans:=ans-a[i];
k1:=k1-1;
end;
end;
begin
read(n,k);
for i:=1 to n do read(a[i]);
fang:=0;ans:=0;
zuhe(1,0);
write(fang);
end.
测试点1 Accepted / 0ms / 260kB
测试点2 Accepted / 0ms / 260kB
测试点3 Accepted / 0ms / 260kB
测试点4 Accepted / 0ms / 260kB
测试点5 Accepted / 0ms / 260kB
测试点6 Accepted / 0ms / 260kB
测试点7 Accepted / 0ms / 260kB
测试点8 Accepted / 0ms / 260kB
测试点9 Accepted / 0ms / 260kB
测试点10 Accepted / 0ms / 260kB
测试点1 Accepted / 0ms / 260kB
测试点2 Accepted / 0ms / 260kB
测试点3 Accepted / 0ms / 260kB
测试点4 Accepted / 0ms / 260kB
测试点5 Accepted / 0ms / 260kB
测试点6 Accepted / 0ms / 260kB
测试点7 Accepted / 0ms / 260kB
测试点8 Accepted / 0ms / 260kB
测试点9 Accepted / 0ms / 260kB
测试点10 Accepted / 0ms / 260kB