📄 ac1107.pas
字号:
program tju1107;
const
maxn=6;
maxk=10000;
var
flag:array[0..maxk]of byte;
a:array[1..maxn,1..maxn]of longint;
t,n,k,i,count:word;
procedure search(l:byte);
var
x,y,i:byte;
begin
if l=0 then begin
if (a[1,1]>=0) and (a[1,1]<=k) and (flag[a[1,1]]<t) then begin
flag[a[1,1]]:=t;inc(count);
end;
exit;
end;
for i:=1 to l do a[l,i]:=a[l+1,i];
for x:=2 to l+1 do begin
a[l,x]:=a[l+1,l+1];
for y:=1 to x-1 do begin
a[l,y]:=a[l+1,x]+a[l+1,y];search(l-1);
a[l,y]:=a[l+1,x]-a[l+1,y];search(l-1);
a[l,y]:=-a[l,y];search(l-1);
a[l,y]:=a[l+1,x]*a[l+1,y];search(l-1);
a[l,y]:=a[l+1,y];
end;
a[l,x]:=a[l+1,x];
end;
end;
begin
repeat
inc(t);read(n,k);
for i:=1 to n do read(a[n,i]);
count:=0;search(n-1);
writeln(count);
until seekeof;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -