Cmp file nospace

From EjudgeWiki

Навигация: Главная страница/Система ejudge/Использование/Проверяющие программы/Стандартные проверяющие программы/cmp_file_nospace

Стандартная проверяющая программа cmp_file_nospace используется для сравнения файла результата работы тестируемой программы и эталонного файла ответа как текстовых файлов с удалением повторяющихся последовательностей пробельных символов.

При чтении каждого файла в память он разбивается на строки текста по символу \n. Последняя строка в файле может не заканчиваться символом \n. Пробельные символы на концах строк отбрасываются. Пустые строки в конце каждого файла также отбрасываются.

Все последовательности пробельных символов, находящиеся в началах строк, удаляются. Последовательности пробельных символов, находящиеся в строке (то есть, и слева и справа от которых находятся непробельные символы), заменяются на один символ пробела. Пустые строки в середине текста удаляются.

Если после такой трансформации результат работы тестируемой программы не равен эталонному ответу, проверяющая программа выносит вердикт неправильный ответ.

(С версии 2.3.25) Если установлена переменная окружения EJ_REQUIRE_NL, то вывод тестируемой программы проверяется на наличие символа \n в конце. Если символ \n отсутствует, проверяющая программа завершается с вердиктом ошибка неправильного формата результата.