Даны два большущих числа. проверьте, делится ли их произведение на девять. формат файла входных данных: в двух строках входного файла даны два целых неотрицательных числа, по одному в строке. запись каждого из них состоит из не более чем 106 цифр. формат файла выходных данных: в единственной строке выходного файла выведите "yes", если произведение данных чисел делится на девять, и "no" в противном случае (без кавычек). программу я написал, но есть проблема: время действия программы превышает 3 секунды, решить эту проблему

qwsdftuik qwsdftuik    2   02.09.2019 13:00    2

Ответы
Миша1112994 Миша1112994  06.10.2020 12:16
// PascalABC.NET 3.2, сборка 1456 от 26.05.2017
// Внимание! Если программа не работает, обновите версию!

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.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика