Здравствуйте!
При некоторых отправке файлов в "output-only" задачах система ругается на попытку отправки бинарного файла. А каким образом тогда можно отправлять, например, картинки?
Была идея, чтобы школьники присылали сканированные ответы на задачи или файлы с рисунками-пояснениями к задачам...
Отправка бинарных файлов
Re: Отправка бинарных файлов
Необходимо у задачи установить флаг binary_input.
Re: Отправка бинарных файлов
Угу, все правильно. Я так собираю у школьников и файлы-картинки, и PDF-файлы, и ODS-таблицы. В общем, если есть задание, и результатом его выполнения является файл, то я очень часто использую именно ejudge.
Если будете собирать картинки, сразу же увеличивайте параметр max_run_size для задачи - 64KB, наверное, маловато будет.
А еще я придумал для сдачи картинок или иных файлов использовать чекеры в виде простых bash-скриптов. Они просто проверяют формат файла. Например, так:
И тогда в этой задаче можно сдавать только файлы в формате PNG.
Если будете собирать картинки, сразу же увеличивайте параметр max_run_size для задачи - 64KB, наверное, маловато будет.
А еще я придумал для сдачи картинок или иных файлов использовать чекеры в виде простых bash-скриптов. Они просто проверяют формат файла. Например, так:
Code: Select all
#!/bin/bash
if file $2 | grep -q "PNG image"
then
exit 0
else
echo "Файл должен иметь формат PNG"
exit 4
fi
Re: Отправка бинарных файлов
Можно использовать параметр enable_language в разделе описания задачи, например:
будут приниматься только изображения в форматах PNG или JPEG
Code: Select all
type = "output-only"
binary
enable_language = "image/png"
enable_language = "image/jpeg"
Re: Отправка бинарных файлов
Огромное спасибо!
Будем пробовать
Будем пробовать
