В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
mayerok
mayerok
28.07.2020 17:43 •  Информатика

Условие этой простое. найдите наименьшее k такое, что k! делится на n без остатка. k! = 1 · 2 · 3 · · (k − 1) · k. формат входных данных в первой и единственной строке дано число n (1 ⩽ n ⩽ 109).

Ответ:
SovaZ
SovaZ
04.10.2020 15:22
Var k,n,d,m,s:integer;
begin
 k := 1;
 d := 2;
 read(n);
 while n > 1 do
  begin
  s := 0;
  m := 1;
  while n mod d = 0 do
    begin
    if m mod d <> 0 then
      begin
      s := s + d;
      m := s;
      end;
    n := n div d;
    m := m div d;
    end;
  if s > k then k := s;
  d := d + 1
  end;
 writeln(k)
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?