Синформатикой! в любом числе можно выделить некоторую непрерывную последовательность цифр, которая тоже будет некоторым числом. требуется написать программу, которая находит максимальное натуральное число х такое, что десятичная запись числа x^2 является подстрокой в десятичной записи числа n. если такого числа нет, то вывести ноль. формат входных данных (допускается чтение с клавиатуры) вводится натуральное число n. 1 n 1 000 000 000. формат выходных данных (допускается вывод на экран) выведите максимальное натуральное число х такое, что десятичная запись числа x2 является подстрокой в десятичной записи числа n.
//Очередное решение "в лоб"
Var
n,i,j,max:integer;
s,curr:string;
b:boolean=false;
begin
readln(n);
max:=-1;
s:=inttostr(n);
for i:=1 to length(s) do
begin
curr:='';
for j:=i downto 1 do
begin
curr:=s[j]+curr;
if frac(sqrt(strtoint(curr)))=0 then
begin
b:=true;
if sqrt(strtoint(curr))>max then max:=round(sqrt(strtoint(curr)));
end;
end;
end;
if b then writeln(max) else writeln('0');
end.
Пример ввода 1:
164
Пример вывода 1:
8
Пример ввода 2:
523
Пример вывода 2:
0