Hi, Codeforces! Сan anyone advice me how to use testlib locally? I use Code::Blocks IDE with C++ and want to create a checker. No idea how to pass arguments (int argc, char * argv[]) to the main function :)
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 155 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
Hi, Codeforces! Сan anyone advice me how to use testlib locally? I use Code::Blocks IDE with C++ and want to create a checker. No idea how to pass arguments (int argc, char * argv[]) to the main function :)
Предисловие: Нужно подготовить задачу на открытые тесты(каждый тест оценивается в какое-то количество балов), и хотелось бы на сервисе Яндекса. Нашел вариант с компилятором Make2 + компилированием с помощью Makefile, doit.sh, select_file.py(вот это все для отправки готовых ответов в виде архива => разархивирования архива) и постпроцессинга с выставлением балов файлом postprocessor_sum_points.py(пишу название для тех, кто шарит :)
А теперь к проблеме. Чтобы я не делал, чекер, использующий testlib всегда выдает одну и туже комбинацию Crash(Exitcode 7) + оценка баллов:
Заглянув в документацию testlib.h, можно увидеть это:
Вопрос 1: Я не совсем понимаю, в каких случаях возникает этот exitcode. Это же не сама ошибка в программе(ведь тогда бы было что-то вроде SISGEV), но тогда что это и почему нет никаких пояснений?
Вопрос 2: Я создал такой же чекер и решение на полигоне, но на нем получил славный OK. Как вообще могут различаться вердикты то?
Вопрос 3: Я перед глазами вижу задачу, в которой тоже получаю Crash + Exitcode 7, отправляя решения вj вкладке "Тесты и решения"(как админ задачи), но никаких проблем при работе в контесте с этой задачей(полный балл и Exitcode 0).
Был бы очень признателен хоть каким-то намекам в том, что делать или что проверить. Еще хотелось бы понять про этот таинственный Exitcode 7. Код чекера
P.S. Не совсем представляю черную магию, которая не дает мне засылать архивы в задачу или загружать их в локальное пространство задачи(в первом случае кнопка "отправить" блокируется, во втором — архив таинственным образом превращается в последний текстовый файл из архива; с этим можно смириться, отправляя архив в контесте, но, как уже выяснено выше, это не всегда дает одинаковый вердикт).
Так выглядят вердикты тестов:
Лог тестов:
UPD: Решается обычным костылем "#define POINTS_EXIT_CODE 0". Видимо, все чекеры testlib с points-checker возвращаются с такими бЕдами. Надеюсь, кому-то поможет)
Название |
---|