Помощь ← Система провекри лабораторных работ Checker
Система провекри лабораторных работ
Аутентификация
Система работает только с авторизованными пользователями. Для аутентификации используются gpg-подписи
Открытый ключ сдающего должен быть известен принимающей стороне.
Вариант задания определяется по идентификатору пользователя, которым является email, введенный при генерации gpg.
Формат письма
Письмо нужно посылать по адресу checker@umc8.ru. Тема письма состоит из кода курса и номера задания, написанных через двоеточие, например da:1 для первой лабораторной по дискретному анализу. Текст письма ингорируется. С письмом должны посылаться два вложения: исходный текст программы (посылается одним файлом) и его открепленная gpg-подпись в текстовом виде. Другие вложения не допускаются.
Если программа состоит из одного файла, он посылается как есть. В случае нескольких файлов, посылается несжатый tar или pax-архив директории, содержащей эти файлы. Имя директории должно совпадать с именем архива без расширения. Программа должна собираться автоматически с помощью утилиты make. Имя запускаемого файла должно совпадать с именем директории. Если в задании не оговорено иное, то программа должна принимать входные данные со стандартного ввода и выдавать результат на стандартный вывод. Программа не должна выводить никаких сообщений, кроме указанных в задании.
Коды курсов
da — дискретный анализ;
os — операционные системы;
inf — информатика.
Возможные ответы системы
- Error: wrong subject. — неверный формат темы письма (должно быть course:task).
- Error: the message doesn't contain data file of signature. — в письме нет необходимых вложений. То, что вложение правильное, проверяется по расширению посылаемого файла. Сейчас допускаются файлы с расширениями tar, pax, cpp, c, py и подписи с расширением asc.
- Error: gpg signature is incorrect. — произошла ошибка при проверке подписи. Это может случиться, если открытый ключ пользователя неизвестен системе, либо если подпись неверная. Последняя ошибка может быть вызвана проблемами в клиентской программе, посылающей почту или неверной работой части системы, извлекающей вложения из письма. Если вы уверены, что посылаете правильное письмо, пожалуйста, сообщите о проблеме по адресу tr@umc8.ru.
- Error: bad signature. — неверная подпись. Такая ошибка может быть вызвана тем, что вы послали подпись не к тому файлу. Или после того, как подписали файл, исправили его.
- Internal error: unable to get variant for user
, course <course_name>, task number <task_number> — для данного пользователя не существует варианта задания. Нужно обратиться к преподавателю и выяснить, почему так. - Compilation error — ошибка компиляции, ответ системы также должен содержать часть лога компиляции.
- Runtime error at n.t — программа вышла с кодом, отличным от 0 на n-ном тесте. Это может быть в случае если процесс был убит из-за нехватки памяти или времени, если программа упала сама или если выполнение дошло до места, где в коде было написано exit(1).
- Wrong answer at n.t — вывод программы не совпадает с ожидаемым выводом.
- OK — все тесты пройдены успешно.
FAQ
- Я проверял на своих тестах, у меня все работает, почему я получаю Wrong answer/Runtime error?
Возможно, ваши тесты не полны. Проверьте, корректно ли работает программа на граничных значениях, на пустом файле, на больших объемах данных. Убедитесь, что вы реализовали нужный алгоритм и укладываетесь в разумные пределы по времени и памяти, что сложностные оценки соответствуют ожидаемым. Посмотрите, соответствует ли вывод вашей программы тому, что указано в задании. Запустите программу под разными операционными системами, убедитесь, что корректность работы не зависит от ОС. Если вы уверены, что проблема не с вашей стороны, сообщите преподавателю, возможно, ошибка в тестах.
- У меня во вложении файл и подпись, которые точно соответствуют друг другу, почему мне говорят gpg signature is incorrect?
Иногда текстовое вложение может измениться в процессе пересылки или извлечения (например, пропадает последний перевод строки), gpg-подпись, соответственно, становится недействительна. Попробуйте послать с другого клиента (с gmail-а, например).
- Как мне получить тест, на котором не работает моя программа?
Нужно обратиться к преподавателю и объяснить, почему этот тест вам нужен, и вы не можете повторить ошибку самостоятельно.