Задача:interactive
Навигация: Главная страница/Система ejudge/Использование/Виды задач/Задача:interactive
В интерактивных задачах программа участника не читает входной файл и пишет в выходной файл, а взаимодействует со специальной программой, называемой программой-интерактором. Программа-интерактор может реализовывать различные стратегии поведения в зависимости от поведения тестируемой программы.
Для организации взаимодействия тестирующая система создает два неименованных канала (pipe), один в направлении от тестируемой программы к программе-интерактору, другой в направлении от программы-интерактора к тестируемой программе. Стандартный ввод тестируемой программы перенаправлен на чтение из второго канала, а стандартный вывод тестируемой программы перенаправлен на запись в первый канал. Для программы-интерактора стандартный поток ввода и стандартный поток вывода перенаправляются в обратном направлении.
Тестирующая система запускает параллельно тестируемую программу и программу-интерактор и ждет завершения обеих программ.
Дальнейшее поведение тестирующей системы определяется по совокупности статусов завершения тестирующей программы и программы-интерактора. Проверки перечислены в порядке их выполнения.
- Программа-интерактор превысила ограничение на максимальное время выполнения и была снята с выполнения из-за этого. Фиксируется вердикт CF.