Форум » Первый тур » Тесты » Ответить

Тесты

Неспирный В.Н.: Выкладываю материалы первого тура областной олимпиады для 10-11 класса: 1. К задаче "Решето Эратосфена" - http://donoi.narod.ru/obl2009/erato.zip 2. К задаче "100 великих украинцев" - http://donoi.narod.ru/obl2009/greatukr.zip 3. К задаче "Игра Евклида" - http://donoi.narod.ru/obl2009/euclgame.zip Напоминаю, как можно проверить свои собственные решение этих задач. Неспирный В.Н. пишет: [quote]Как проверить свое решение на каком-либо тесте с помощью QuickCheck 1. Распакуйте архивы (с заменой файлов) в соответствующие подкаталоги папки eta в папке, где содержится QuickCheck (например, если QuickCheck находится в c:\olymp, то архив apples.zip необходимо распаковать в c:\olymp\eta\apples). 2. Измените файл настроек quickcheck.xml следующим образом: а) свойство pipeBufferSize="1000000" раздела olymp б) свойство time="500" для каждой задачи в) вместо "00" в свойстве name для соответствующей задачи поставить номер теста (помните, что он здесь двузначный), на котором вы бы хотели протестировать решение. 3. Запустить QuickCheck и далее действовать согласно инструкции для участника. Как проверить свое решение без QuickCheck 1. Распакуйте архив с тестами соответствующей задачей в какую-либо папку. 2. Скопируйте в эту папку ваше решение (файл .cpp или .pas) 3. Проверьте, что в файле pas_compile.bat или cpp_compile.bat правильно записан путь к компилятору, которым должна компилироваться ваша программа. 4. Для удобства дальнейшей работы имеет смысл воспользоваться командной строкой (меню "Программы\Стандартные" либо "Пуск\Выполнить..." и набрать cmd) или каким-нибудь файловым менеджером (FAR, Total Commander) с командной строкой. 5. С помощью команды смены текущего диска (имя_диска:) и текущей директории (cd путь), установите текущей ту папку, куда вы распаковали тесты. 6. Откомпилируйте вашу программу, запустив pas_compile.bat (для решения на Pascal) или cpp_compile.bat (для решения на C++). 7. Если получено сообщение об ошибке(-ах) и не создался соответствующий exe-файл, то программа не компилируется, дальше проверять смысла нет. 8. В случае удачной компиляции, можно воспользоваться командным файлом test.bat c параметром, определяющим номер теста, для того, чтобы проверить решение на этом тесте. Например, test.bat 09 позволит проверить решение на 9-ом тесте. 9. В результате выполнения программы будет выведен вердикт валидатора (первый символ) и затем некоторый комментарий, конкретизирующий ошибку. 10. В файле input можно будет посмотреть данные, которые подавались на вход программе, в файле output - все, что программа выводила, и в файле etalon - правильный ответ. Преимущество проверки без QuickCheck заключается в том, откомпилированную один раз программу можно запускать несколько раз (на разных тестах), но, к сожалению, не всегда легко оценить время ее работы (валидатор не определяет тайм-лимиты). Плюс ко всему если программа зависает, то придется вручную снимать соответствующий процесс с помощью диспетчера задач. QuickCheck позволяет прерывать зависшие программы, плюс сам выполняет всю работу по копированию и компиляции, но позволяет проверить только на одном тесте (что однако не мешает многократно изменять quickcheck.xml и повторно сдавать решение).[/quote] 4. Последняя версия QuickCheck (на которой и проводился первый тур - 0.63) и настройки для задач первого тура - http://donoi.narod.ru/obl2009/quickcheck_tour1.rar 5. Инструкции по установке и использованию различных компиляторов, сред программирования и клиента QuickCheck, можно найти в документах по районной олимпиаде - http://donoi.narod.ru/doc/Quickcheck_participant.doc и http://donoi.narod.ru/doc/Quickcheck_orgcomittee.doc

Ответов - 1

Неспирный В.Н.: Забыл сказать о разбалловке. В задаче erato: самый первый тест (00) - это тест из условия, он оценивался в 0 баллов, остальные 20 тестов оценивались по 5 баллов каждый. В задаче greatukr: первый тест (00) - тест из условия, он также оценивался в 0 баллов, а далее - 10 групп тестов по 10 баллов каждая (например, тесты 7-ой группы имеют имена 07a,07b,07c,07d). В протоколе отображается результат прохождения по каждой группе тестов - если все тесты группы прошли, то должен стоять +, в противном случае дается результат по первому из непройденных тестов группы. В задаче euclgame: тест из условия был просто включен в первую группу, всего 8 групп тестов, группы с нечетными номерами оценивались в 12 баллов, с четными - 13.



полная версия страницы