Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
var f,g:text;a,b:array [1..100] of integer;d,n,k,i:integer;
procedure xl;
var i,t:integer;s:string;
begin
s:='';t:=a[1];
for i:=2 to n do
if b[i]=0 then
begin
t:=t+a[i];
s:=s+'+';
end
else begin
t:=t-a[i];
s:=s+'-';
end;
if t mod k=0 then
begin
inc(d);
writeln(g,1,s);
end;
end;
procedure try(i:integer);
var j:0..1;
begin
if d>0 then exit;
for j:=0 to 1 do
begin
b[i]:=j;
if i=n then xl else try(i+1);
if d>0 then break;
end;
end;
Begin
assign(f,'sign.inp');reset(f);
assign(g,'sign.out');rewrite(g);
readln(f,n,k);
for i:=1 to n do read(f,a[i]);
try(2);
if d=0 then writeln(g,d);
close(g);
End.
Hãy giúp mọi người biết câu trả lời này thế nào?
Bảng tin
2
165
0
Test đc bao nhiêu % hả bạn
0
55
0
bài nãy bộ test lớn chạy k nổi
0
55
0
bài này chỉ test được nếu dấu trừ ở đầu, mình thử 10 bộ test nhỏ thì thấy chỉ chạy đúng ví dụ ở đề bài