Olymp2.ppt
- Количество слайдов: 25
Кружок «Олимпиадное программирование» 22 октября Григорьева Анастасия Викторовна. Мат-мех 2015
Что будет сегодня? p Организационное p Вспоминая прошлое p Специфика олимпиад p Вопросы из писем p Олимпиады для поступления p Задачи Мат-мех 2015 2
Организационное Мат-мех 2015 3
Контакты p Группа вконтакте (На данный момент там инфа об олимпиадах для поступления, слайды с лекций, ссылки на on-line компиляторы, на ваш рейтинг, расписание, фракталы, видео сортировок) http: //vk. com/club 104215000 p Ваш рейтинг (обновляется по мере проверки ДЗ. По той же ссылке заход. Ите каждый раз) https: //docs. google. com/spreadsheets/d/15 n. PV-Z 6 Rm. PZS 7 h. O 0 q. RB 2 Wf. QLapo. Ji. Zi. Hkis 0 f. Qg. Gk. I/edit#gid=0 p Для ДЗ и вопросов: Nastya 001@mail. ru Мат-мех 2015 4
Ссылки p Компилируем для С++ http: //ideone. com/ Надо добиться, чтобы там не было ошибки компиляции Мат-мех 2015 5
Про ДЗ p Сдавать задачу нужно до победного Во-первых, больше баллов в рейтинге во-вторых, найти свою ошибку – ценнее для опыта, чем решить сразу Сдавать можно пока на паре не озвучено решение p Присылать только по почте, только в теле письма p Контакт, например, >> заменяет на нечто гламурное, и после этого код перестаёт компилироваться. По e-mail надёжнее. p Подписывайте название задачи Чтобы не приходилось по названиям переменных угадывать, о чем код. И это хорошо еще если переменные названы осмысленно. Мат-мех 2015 6
Вспоминая прошлое Вопрос про sort (C++) Пример теста Мат-мех 2015 7
sort (C++) p Нужна конкретная сортировка подключите библиотеки и выбирайте p Реализация стандартной sort зависит от компилятора p maximum O(2×log 2 n) Раньше это был quicksort, но у него O(n logn) только в среднем случае. Теперь есть требование, чтобы O(n logn) был в худшем случае. Теперь это вариация из пирамидальной, сортировки вставками и heapsort. И зависит от компилятора. Источник: https: //en. wikipedia. org/wiki/Sort_%28 C%2 B%2 B%29 Мат-мех 2015 8
Пример теста Если кто-то так и не скачал и не посмотрел презентацию с предыдущей лекции, посмотрите. Мат-мех 2015 9
Специфика олимпиад Тактическая подготовка Мат-мех 2015 10
- Какой Ваш любимый талисман? - Голова. Всегда ношу её с собой. Специфика олимпиад p Распределение своих сил Какую задачу решать первой? Какую на потом? Вначале подъем сил или «раскачиваетесь» по ходу? Узнать, на сколько времени вам хватает концентрации, когда устаёте У всех это индивидуально p Как провести время перед началом Говорить на отвлеченные темы или готовиться/повторять? Среди друзей или наедине с собой p Что именно Вам помогает Кофе? Шоколад? Пепси? На сколько по времени действует. Талисманы. Счастливая ручка? Фотография любимой кошки? p Не признавайтесь в любви во время олимпиады Лучше дождитесь результатов ; ) Мат-мех 2015 11
Специфика олимпиад по инф-ке p Следите внимательно, чтобы в финальной версии не оставалось: 1. ввода-вывода с консоли, если у Вас из файла требование 2. system("pause"); 3. Read. Key 4. Вывод промежуточных данных на консоль и т. п. Т. к. проверка автоматическая. У Вас просто превысит время ожидания на всех тестах у правильно решенной задачи, будет обидно p Протестируйте на тесте из задания а то встречаются… p Проверьте, что сохранили и что отправляете именно последнюю версию p Составление тестов для самопроверки Часто помогает увидеть нетривиальный вариант решения. Представьте, что вам надо придумать такой тест, на котором программа упадёт. Каверзный. Представьте, что тестируете чужую программу и Ваша цель – найти в ней слабое место. Мат-мех 2015 12
Специфика олимпиад по инф-ке p Прочитайте сначала все задания Нужно сразу найти и решить все простые задачи. Сложность у задач разная, а при подсчете результатов она никак не учитывается. p Не начинайте со сложной задачи Сложные задачи стоит решать только запрограммировав простые Иначе погрязните в ней, если всплывут тонкости, или само написание займёт много времени, и на простые задачи не останется сил или времени p Кратко набросайте алгоритм на бумаге Основную его часть, не подробно. Всплывут ньюансы. Так видно детали лучше, чем в коде. Не бросайтесь сразу писать код. Мат-мех 2015 13
Вопросы из писем Переменная в цикле Мат-мех 2015 14
Переменная внутри цикла Когда её объявляешь внутри цикла, она удаляется из памяти после того, как цикл кончится Верно Но по памяти в этом случае выигрыша нет, а по скорости мы проигрываем. Ведь каждый раз при таком подходе память перевыделяется заново. Мат-мех 2015 15
Переменная внутри цикла Поэтому принято писать так: Чтобы про i мы потом могли забыть. Но вместо: Лучше так: Мат-мех 2015 16
Олимпиады дающие льготы при поступлении в ВУЗ Мат-мех 2015 17
Олимпиады для поступления p На сайте Мин. Обр. Науки за 2015/2016 Вам повезло. Раньше только весной выкладывали p Срок годности дипломов 1 год из списка, 4 для Всероссийской p Уровни I, III. Каждый ВУЗ сам выбирает p Главная наша цель – Всероссийская Но для тех, кто в 11 классе и не участвовал в школьном этапе, цель – олимпиады из списка Подавать можно диплом не более чем в N ВУЗов p Отборочный тур и очный p Подробнее + список см. в группе p Мат-мех 2015 18
Задача Мат-мех 2015 19
2529. Подарок Начинающий программист Поликарп очень любит дарить подарки, особенно в коробках. Он давно заметил, что если коробка красиво оформлена, то радость от подарка возрастает многократно. Любой обёрточной бумаге он предпочитает клетчатую. В самом деле, после распаковки подарка на ней можно играть в крестики-нолики, морской бой, точки, а также решать задачи и писать программы. Поликарп очень аккуратен. Он упаковывает подарок в коробку, имеющую форму прямоугольного параллелепипеда, и оклеивает всю её поверхность клетчатой бумагой. При этом каждая грань коробки представляет собой прямоугольник, состоящий из целых клеток. На рисунке изображён пример такой упаковки подарка. В настоящий момент Поликарп собирается поздравить свою подругу, недавно вернувшуюся с очередной олимпиады. Он хочет подарить ей подарок в большой и красивой коробке. У Поликарпа в наличии есть лист клетчатой бумаги, состоящий из n клеток. Каким будет максимальный объём коробки, которую можно оклеить с использованием этого листа бумаги описанным выше способом? Поликарп может разрезать лист клетчатой бумаги по границам клеток произвольным образом и оклеивать коробку получившимися фигурами, поэтому форма листа не важна, а имеет значение только количество клеток на нём. Поликарп может использовать для оклеивания коробки не все клетки. Напишите программу, которая по заданному количеству клеток n находит 20 Мат-мех 2015 размеры коробки максимального возможного объема.
Рисунок, тесты Мат-мех 2015 21
Итерации решения Мат-мех 2015 22
И еще лучше Мат-мех 2015 23
Мат-мех 2015 24
Литература p p p https: //en. wikipedia. org/wiki/Sort_%28 C%2 B%2 B%29 http: //acm. tuit. uz/books/akishev. pdf http: //ruslitsaglayi. jimdo. com/ученикам/уроки-русског. . http: //минобрнауки. рф Мат-мех 2015 25
Olymp2.ppt