Предмет: Информатика, автор: marcheanin

Даны два БоЛьШуЩиХ ЧиСЛа. Проверьте, делится ли их произведение на девять.

Формат файла входных данных:

В двух строках входного файла даны два целых неотрицательных числа, по одному в строке. Запись каждого из них состоит из не более чем 106 цифр.

Формат файла выходных данных:

В единственной строке выходного файла выведите "YES", если произведение данных чисел делится на девять, и "NO" в противном случае (без кавычек).


Программу я написал, но есть проблема: время действия программы превышает 3 секунды, помогите пожалуйста решить эту проблему

Ответы

Автор ответа: Аноним
0
// 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.

Приложения:
Автор ответа: marcheanin
0
Я узнал что эта программа не работает на FreePascal
Автор ответа: marcheanin
0
Сделай ввод через Readln()
Автор ответа: Аноним
0
Она и не будет работать на FPC и не только из-за ввода. Ваш вопрос не содержал указания даже о языке программирования, а не то, чтобы о его разновидности. Вы с таким же успехом могли получить решение на Питоне или C#. Если Вас не заботит вопрос об указании языка программирования, то Вам придется довольствоваться тем, что Вы получили.
Автор ответа: Аноним
0
И да, не стоит к незнакомым людям обращаться на "ты".
Автор ответа: marcheanin
0
Спасибо за помощь
Похожие вопросы
Предмет: Информатика, автор: mereijt05
Предмет: Английский язык, автор: dars37
Предмет: Математика, автор: девочкЛерочка
Предмет: Математика, автор: ulm506