Есть более простой способ работы с файлами на олимпиадах, чем прямолинейное открытие/закрытие файла. Вот код
program Solution;
begin
Assign(input,'input.txt');Reset(input);
Assign(output,'output.txt');Rewrite(output);
ReadLn(Data); { нам не надо указывать из какого файла читать т.к. input читается по умолчанию}
...
Answer:=решение(Data);
...
WriteLn(Answer); { ответ идет в output }
{ Нам не нужно закрывать файлы, поскольку они объявлены в System и закроются сами }
end;
В результате мы экономим пару строк кода, а также делаем очень легкой отладку, т.к. просто закомментировав строку можно выводить результат на экран.
Примечание: переменные input и output описывать в разделе var не нужно! В данном случае компилятор автоматически асоциирует их с файлами ввода-вывода. |