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