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 | 3880 |
2 | jiangly | 3669 |
3 | ecnerwala | 3654 |
4 | Benq | 3627 |
5 | orzdevinwang | 3612 |
6 | Geothermal | 3569 |
6 | cnnfls_csy | 3569 |
8 | jqdai0815 | 3532 |
9 | Radewoosh | 3522 |
10 | gyh20 | 3447 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | awoo | 161 |
2 | maomao90 | 160 |
3 | adamant | 156 |
4 | maroonrk | 153 |
5 | atcoder_official | 148 |
5 | -is-this-fft- | 148 |
5 | SecondThread | 148 |
8 | Petr | 147 |
9 | nor | 144 |
10 | TheScrasse | 142 |
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 возвращаются с такими бЕдами. Надеюсь, кому-то поможет)
Название |
---|