Методика и содержание подготовки учащихся к олимпиадам по программированию. Дистанционный курс. Контрольная работа №1 Работа оценивается по системе «зачет/незачет» Максимальная оценка за работу – 20 баллов, для получения оценки «зачет» необходимо набрать не менее 12 баллов. Задание № 1 (максимальная оценка: 5 баллов) Составьте максимально полный комплект тестов к прилагаемой задаче с учетом ограничений на входные данные. Тесты снабдите комментариями (к какому частному случаю или технической особенности при написании программы он относится). Ответ оформите в виде таблицы (при необходимости можно добавлять или удалять строки таблицы) № 1 2 3 4 5 6 7 Входные данные Результат Комментарий Задача: Козел в огороде (источник: http://acm.timus.ru) Дан квадратный огород. Точно в центре квадрата прибит колышек, за который привязан голодный козел. Козел съест все, до чего сможет дотянуться. Определить площадь «выеденной части» с точностью до 3 знака после запятой. Входные данные: с клавиатуры через пробел вводятся два числа - длина стороны огорода (натуральное, не более 1000) и длина веревки (также натуральное, не более 1000). Результат: вывести на экран единственное число - искомую площадь. Пример: Входные данные 10 6 Результат 95.091 Задание № 2 (максимальная оценка: 10 баллов; максимальная оценка по каждому пункту – 2 балла) Опишите в виде программы, блок-схемы или словесно алгоритмы для решения следующих задач и оцените их функции сложности O(f(N)). Если функция сложности в худшем и среднем случае отличается, то укажите какую именно функцию сложности Вы определили. а) нахождение второго максимума в массиве из N целых чисел (то есть такого элемента, который строго меньше максимального, но больше либо равен всем остальным); б) нахождение суммы всех элементов квадратной матрицы из N x N целых чисел; в) сокращение дроби X/Y (нахождение таких A и B, что X/Y=A/B и дробь A/B – несократима); МЦНМО, 2007/08 учебный год Методика и содержание подготовки учащихся к олимпиадам по программированию. Дистанционный курс. г) дан набор из k различных букв, проверить можно ли из них составить слово длины N (каждую букву можно использовать любое количество раз); д) определение минимального количества монет по 10, 5, 2 и 1 рублю, необходимых чтобы уплатить сумму, равную N (целое, положительное). Задание № 3 (максимальная оценка: 5 баллов) Составьте максимально полный комплект тестов к прилагаемой задаче с учетом ограничений на входные данные. Тесты снабдите комментариями (к какому частному случаю или технической особенности при написании программы он относится). Ответ оформите в виде таблицы (при необходимости можно добавлять или удалять строки таблицы) № 1 2 3 4 5 6 7 Входные данные Результат Комментарий Задача: Календарь. С клавиатуры вводится дата в формате дд:мм:гггг, где дд – номер дня в месяце, мм – номер месяца в году, гггг – номер года по современному летоисчислению. Определить номер этого дня в году. Справка: високосный год – такой, номер которого делится на 400, а также те, у которых номер делится на 4, но не делится на 100. Пример: Исходные данные Результат 01:02:2007 32 МЦНМО, 2007/08 учебный год