Регистрация
Войти
Стать экспертом Правила
Информатика

Даны два БоЛьШуЩиХ ЧиСЛа. Проверьте, делится ли их произведение на девять.Формат файла входных данных:В двух строках входного файла даны два целых неотрицательных числа, по одному в строке. Запись каждого из них состоит из не более чем 106 цифр.Формат файла выходных данных:В единственной строке выходного файла выведите "YES", если произведение данных чисел делится на девять, и "NO" в противном случае (без кавычек).Программу я написал, но есть проблема: время действия программы превышает 3 секунды, Пожалуйста посчитайте пожалуйста решить эту проблему

ОТВЕТЫ



begin
  var s:=ReadAllLines('data.txt');
  var f:=OpenWrite('output.txt');
  var s1:=s[0].ToCharArray.Select(c->c.ToDigit).Sum;
  if s1 mod 9=0 then Writeln(f,'YES')
  else begin
    var s2:=s[1].ToCharArray.Select(c->c.ToDigit).Sum;
    if s2 mod 9=0 then Writeln(f,'YES')
    else
      if (s1 mod 3=0) and (s2 mod 3=0) then Writeln(f,'YES')
      else Writeln(f,'NO')
    end;
  f.Close
end.
  1. Я узнал что эта программа не работает на FreePascal
301
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам