Для того чтобы проверить, как ее ученики умеют считать, мария ивановна каждый год задает им на дом одну и ту же – «для заданного натурального a найти минимальное натуральное n такое, что n в степени n (n, умноженное на себя n раз) делится на a». из года в год и от ученика к ученику меняется только число a. вы решили будущим поколениям. для этого вам необходимо написать программу, решающую эту формат входных данных. во входном файле содержится единственное число a (1 a 109). формат выходных данных. в выходной файл вывести единственное число n. примеры. input.txt output.txt 8 4 13 13 имя входного файла input.txt. имя входного файла output.txt. максимальное время работы на одном тесте – 2 сек. максимальное время работы на одном тесте – 2 сек. максимальный объем используемой памяти 32 мегабайта
/// PascalABC.Net 3.4.2, 2053(11.05.19)
var
a, n: longint;
text: textfile;
function myMod(num, power, divider: longint): longint;
var
rest, i: longint;
begin
rest:=1;
divider := abs(divider);
for i := 1 to power do
begin
rest := rest * num;
rest := rest mod divider;
end;
myMod := rest;
end;
begin
assign(text, 'input.txt');
{rewrite(text);
writeln(text, 109);
close(text);}
reset(text);
read(text, a);
writeln('a=', a);
close(text);
n := 1;
repeat
n := n + 1;
until MyMod(n, n, a) = 0;
assign(text, 'output.txt');
rewrite(text);
writeln(text, n);
close(text);
{reset(text);
read(text, n);
writeln('n=', n);
close(text);}
end.