Skip to content

Latest commit

 

History

History

1-server

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

HTTP (cURL usage, HTTP-requests, simple HTTP server)

A. Запрос секретного кода - 1


ограничение по времени на тест: 1 секунда
ограничение по памяти на тест: 256 мегабайт
ввод: стандартный ввод
вывод: стандартный вывод

Условие: Сделайте запрос на http://wp.codeforces.com/1d1p/ и внимательно посмотрите на ответ. Найдите секретный код!

Входные данные: Нет входных данных.

Выходные данные: Нет выходных данных.


B. Домены на главной Codeforces


ограничение по времени на тест: 1 секунда
ограничение по памяти на тест: 256 мегабайт
ввод: стандартный ввод
вывод: стандартный вывод

Условие: Зайдите на главную страницу Codeforces и загрузите главную страницу. Убедитесь, что страница загружена мимо кэша (например, нажмите Ctrl-F5 в Chrome). В таком случае в процессе загрузки будут загружены десятки файлов. Выведите все различные домены, с которых загружены файлы и ресурсы при загрузки страницы.Рекомендую использовать веб-инспектор браузера Google Chrome или аналогичные инструменты.

Входные данные: Нет данных.

Выходные данные: Нет данных.


C. Выставление счетов


ограничение по времени на тест: 1 секунда
ограничение по памяти на тест: 256 мегабайт
ввод: стандартный ввод
вывод: стандартный вывод

Условие: Зайдите на сайт http://1d3p.wp.codeforces.com/. Там содержится форма по вводу инвойсов (счётов). Ваша задача добавить 100 инвойсов со всеми суммами от 1 до 100. Тогда на странице появится секретное сообщение. Сделайте это с помощью утилиты curl. В веб-инспекторе браузера Chrome можно для запроса скопировать его в виде командной строки для запуска curl с такими параметрами, что будет исполнен именно этот запрос. Добавьте руками произвольный инвойс, получите соответствующую командную строку для curl, сгенерируйте (например, на Java) все запросы для добавления инвойсов с 1 до 100. Выполните получившиеся 100 команд (лучше пару первых отдельно и убедитесь, что всё работает). Обновите страницу в браузере, получите секретное сообщение.

Входные данные: Нет данных.

Выходные данные: Нет данных.


D. Простейший HTTP-сервер


ограничение по времени на тест: 1 секунда
ограничение по памяти на тест: 256 мегабайт
ввод: junit.in
вывод: junit.out

Условие: Для этой задачи я написал простейший учебный HTTP-сервер. Скачайте проект с адреса http://assets.codeforces.com/files/6e78d88da1176e86/1d4p/server14-v2.7z.Ваша задача добавить в него функциональность, чтобы проходили все тесты. Вы должны добавить поддержку: PNG-файлов, файла по-умолчанию (следует отдавать index.html), urlencoded-путей (тестируется поддержкой русского языка в URL), заголовка ETag. Тесты лишь примерно проверяют функциональность. Код программы следует показать преподавателю.Всё решение надо разместить в файле HttpServer (пакет по-умолчанию). Решение надо заархивировать в архив ZIP (чтобы он содержал ровно один файл) и отослать в систему, указав язык Java 8 Archive ZIP.

Входные данные: Нет данных.

Выходные данные: Нет данных.