В правилах проведения некоторых школьных (и не только) олимпиад часто встречаются задачи с нетривиальной оценкой решений, например, на открытой олимпиаде по программированию или Всероссийской олимпиаде.
Нетривиальная оценка конфигурируется с помощью файла dependencies.txt в архиве с тестами к задачами
Краткая история – см баг #874
Синтаксис файла
Каждая строка файла – одно из
описание группы тестов
описание зависимостей группы
комментарий(ещё не до конца реализовано)
Описание группы тестов
Имеет вид: groupname : = { testlist }
где groupname – слово из (латинских?) букв и цифр
testlist – список номеров тестов через запятые и дефисы
Например: testsFromStatement := {4–7, 9, 12–15}
Описание зависимостей
Имеет вид: groupname = depspec
depspec: "(" depspec ")"
depspec: despec "||" depspec
depspec: depspec &&" depspec
depspec: ALL groupname
depspec: OR groupname
Например: testsFromStatement = (ALL group0) && OR testsFromStatement
Комментарии
Пустые строки и строки, начинающиеся с # служат для комментирования, и игнорируются парсером