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 | jiangly | 3640 |
2 | Benq | 3593 |
3 | tourist | 3572 |
4 | orzdevinwang | 3561 |
5 | cnnfls_csy | 3539 |
6 | ecnerwala | 3534 |
7 | Radewoosh | 3532 |
8 | gyh20 | 3447 |
9 | Rebelz | 3409 |
10 | Geothermal | 3408 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | maomao90 | 173 |
2 | adamant | 164 |
3 | awoo | 161 |
4 | TheScrasse | 160 |
5 | nor | 159 |
6 | maroonrk | 156 |
7 | SecondThread | 152 |
8 | pajenegod | 146 |
9 | BledDest | 144 |
10 | Um_nik | 143 |
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 возвращаются с такими бЕдами. Надеюсь, кому-то поможет)
Название |
---|