Как сдавать домашние задания
На курсе есть несколько видов активностей, которые влияют на вашу оценку:
- Контесты (домашние задания в системе Яндекс.Контест)
- КДЗ
- Тесты
- Экзамен
Домашние задания в контесте
Код программ, которые вы будете сдавать в рамках нашего курса, будет проверяться автоматически в системе Яндекс.Контест.
Требования к вводу-выводу
Программа должна читать из стандартного входа и писать в стандартный выход. Входной формат гарантируется: будет так, как описано в условии. Строго придерживайтесь выходного формата. Лишние пробелы и лишние переводы строк — не страшно, а вот пропустить пробел, вывести не в том порядке, пропустить перевод строки или вывести что-то лишнее — будет являться ошибкой.
Вердикты по задаче
Система выдает один из следующих результатов на каждый запуск.
- OK — задача прошла успешно.
- PCF — Precompile check failed — code style violation, вы нарушили какие-то из требований по оформлению кода. Чтобы узнать, какие именно, нажмите на ссылку «отчёт» (она появляется при наведении курсора на строку посылки) и почитайте. Также вы можете получить такую ошибку, если использовали при реализации какую-нибудь стандартную структуру данных или какой-нибудь стандартный алгоритм из библиотеки STL, который в данной задаче было использовать запрещено.
- CE — Compilation Error — ваша программа не компилируется на сервере. Чтобы узнать, почему, нажмите на ссылку «отчёт» (она появляется при наведении курсора на строку посылки) и посмотрите, какие ошибки нашел компилятор.
- WA — Wrong Answer — на некотором тесте программа выдала неверный ответ. Вам не предоставляется возможность увидеть содержимое теста (если это тест не из условия). Внимательно посмотрите на ограничения в задаче, попробуйте придумать свой тест, на котором ответ будет неправильный.
- PE — Presentation Error — ошибка представления. Например, просили вывести число, а выведена строка. В этом случае вы можете получить Wrong Answer либо Presentation error, это не гарантируется заранее.
- TL — Time Limit exceeded — ваша программа работает слишком долго. Значит, у вас неправильное асимптотически решение, так как таймлимиты будут выставляться в 1,5–2 раза больше, чем время работы авторского решения на максимальном тесте, и этого должно хватать любому правильному решению.
- ML — Memory Limit exceeded — ваша программа использует слишком много памяти.
- RE — Runtime Error — произошла ошибка выполнения. Неочевидные возможные причины: чтение из файла вместо стандартного ввода; запись в файл вместо стандартного вывода; переполнение стека. Очевидные причины: выход за границы массива, деление на ноль.
При сдаче домашних задач баллы за посылки и штраф по времени не снимаются. Проверяется последний код, который набрал больше всего баллов.
Сроки
Мягкий дедлайн ставится на дату примерно через 11 суток с момента выдачи контеста.
За каждый день просрочки мягкого дедлайна отправленной посылки по задаче ставится -2 балла этой посылке. При этом берется максимум из 0 и полученного данным образом балла.
То есть жесткий дедлайн – мягкий дедлайн + 4 дня. За посылки, отправленные после жесткого дедлайна соответственно ставится 0.
Все дедлайны будут прописаны в канале курса в telegram.
Критерии оценки обычных контестов
- Нет решения — 0 баллов (база)
- Несоответствие кодстайлу 0 баллов итог
- Прохождение тестов из условия + 1 балл
- Online-тестирование + 7 баллов, в зависимости от групп в задаче
- Offline-тестирование + 2 балла
Пункт 3 проверяется только при прохождении тестов из условия.
Пункт 4 проверяется только при прохождении всех тестов из online-групп.
Оцениваться группы в пунктах 3-4 могут по-разному:
- два режима прерывания групп: при первой ошибке в группе (оставшиеся тесты в группе не проверяются) и без прерываний. По умолчанию до offline-проверки включен режим "при первой ошибке". Во время offline-проверки все решения пересуживаются уже со вторым режимом.
- два режима оценивания групп: "
полный_балл_за_группу * пройденные_тесты_в_группе/тесты_в_группе
" и "0
илиполный_балл_за_группу
". Второй режим включается для задач на написание какого-то алгоритма (к примеру, "напишите сортировку слиянием"). Первый режим включается для задач всех остальных типов, если не написано иное.
Пункты 3 и 4 не фиксируют кол-во баллов. От задачи к задаче разбалловка баллов в 3 и 4 может меняться.
При выявлении списывания списанная задача обнуляется всем участникам списывания. Если в контесте > 1 списанной задачи, то зануляется весь контест.
При использовании читерства в задаче она также зануляется (к примеру, в контесте / задаче явным образом запрещалось использовать std::sort
или что-то аналогичное, а Вы взяли и заюзали каким-то хитрым образом).
Если Вы не согласны с результатом проверки, то можете проапеллировать результат, написав на почту. В чат курса / лички ассистентов / преподавателей писать не надо.
КДЗ
TODO
Тесты
TODO
Экзамен
TODO