记录编号 1126 评测结果 AAAAA
题目名称 [NOIP 2002]选数 最终得分 100
用户昵称 Gravatarname:弓虽 是否通过 通过
代码语言 Pascal 运行时间 0.001 s
提交时间 2008-07-24 10:19:50 内存使用 0.11 MiB
显示代码纯文本
program choose(input,output);
var
 sum,i,k,n:longint;
 x:array [1..20] of longint;
function panduan (s:longint):boolean;
var i:longint;
begin
  panduan:=true;
  for i:=2 to trunc(sqrt(s)) do
  if s mod i=0 then panduan:=false;
end;
procedure p(fu,k,s:longint);
var i:longint;
begin
  if fu<=n+1 then
  if (k=0) then
   begin
    if (panduan(s)=true) and (s<>0)
    then inc(sum)
  end
  else
  for i:=1 downto 0 do
  p(fu+1,k-i,s+i*x[fu]);
end;
begin
  assign(input,'choose.in');
  assign(output,'choose.out');
  reset(input);
  rewrite(output);
  readln(n,k);
  for i:=1 to n do read(x[i]);
   sum:=0;
  p(1,k,0);
  writeln(sum);
  close(input);
  close(output);
end.