Формат вывода?

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
LuffyFuffy
Posts:2
Joined:06 September 2010, 13:20
Формат вывода?

Post by LuffyFuffy » 06 September 2010, 13:48

Не нашел подобных тем на форуме по этому вопросу.
Первый раз столкнулся с тестированием задач на Ejudge.
Допустим на выход задачи необходимо получить три числа, каждое в новой строке. В формате:
6
7
8
Вопрос:
Необходимо ли для корректного засчёта программы после последнего числа 8 делать перевод строки /n?
Т.е. последнее число выводить без перевода строки как printf("%d",i) или надо переводить строку printf("%d\n",i) и выводить ответ в виде
6
7
8
<Новая строка>
Или это уже зависит от конкретных настроек самого Ejudge.

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Формат вывода?

Post by cher » 06 September 2010, 14:02

Это зависит от задачи. Вам следует адресовать этот вопрос тому, кто выдал конкретную задачу.

LuffyFuffy
Posts:2
Joined:06 September 2010, 13:20

Re: Формат вывода?

Post by LuffyFuffy » 06 September 2010, 15:27

Спасибо.
Скажите, пожалуйста. Сами данные, которая программа даёт на вывод система Ejudge получит только после завершения работы программы?
Т.е. я могу спокойно посылать данные в поток вывода(например составляет ответ в виде строки постепенно по ходу выполнения алгоритма) и не опасаться того что система засчитает только первое поступление данных в поток вывода?

dk
Posts:129
Joined:25 March 2006, 19:37
Location:Москва, школа 179
Contact:

Re: Формат вывода?

Post by dk » 06 September 2010, 21:07

cher wrote:Это зависит от задачи. Вам следует адресовать этот вопрос тому, кто выдал конкретную задачу.
Во-во-во. На одной из первой московских командных студенческих олимпиад, т.е. где-то в 1999-2001 году мою команду засудили за то, что в условиях задачи было написано "Программа получает на вход строку". При этом когда я писал считывание данных, то предполагал, что строка заканчивается символом конца строки. А в тестах это было не так. Наша апелляция удовлетворена не была ):

Надеюсь, это послужило одной из причин, почему ejudge автоматически добавляет \n в конец файла (:

dk
Posts:129
Joined:25 March 2006, 19:37
Location:Москва, школа 179
Contact:

Re: Формат вывода?

Post by dk » 06 September 2010, 21:08

LuffyFuffy wrote:Спасибо.
Скажите, пожалуйста. Сами данные, которая программа даёт на вывод система Ejudge получит только после завершения работы программы?
Да, именно так. На самом деле, непонятно, как может быть иначе. Данные в поток вывода вообще-то пишутся побайтово и первое поступление данных в поток вывода - это запись первого байта. Естественно, ejudge обрабатывает не только первый байт выходного потока.

Post Reply