var
n, k, i, j: Integer;
s: String;
begin
ReadLn(n, k);
j := k;
if k < n * 2 then
WriteLn('NO SOLUTION')
else begin
SetLength(s, n);
for i := 1 to n do
s[i] := '1';
k := k - (n * 2);
i := 2;
while (i <= n) and (k >= 4) do begin
s[i] := '0';
k := k - 4;
end;
i := n;
while (i >= 0) and (k > 0) do begin
case s[i] of
'1': if k = 1 then begin
s[i] := '7';
k := 0;
end else if k = 2 then begin
s[i] := '4';
k := 0;
end else if k = 3 then begin
s[i] := '2';
k := 0;
end else if k = 4 then begin
s[i] := '6';
k:=0;
end else begin
s[i] := '8';
k := k - 5;
end;
'0': begin
s[i] := '8';
k := k - 1;
end;
end;
i := i - 1;
end;
if k <> 0 then
writeln('NO SOLUTION')
else begin
writeln(s);
for i := 1 to n do
s[i] := '9';
k := j;
k := k - (n * 6);
i := n;
while (i <= n) and (k <= 1) do begin
s[i] := '1';
k := k + 4;
i := i-1;
end;
i := i + 1;
while (i <= n) and (k > 0) do begin
if k <= 3 then begin
s[i] := '7';
k := k - 1;
end else begin
s[i] := '9';
k := k - 4;
end;
i := i + 1;
end;
writeln(s);
end;
end;
readln;
end.
Помогите решить задачу. Индикатор |