<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.cs.hse.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Glebshp</id>
	<title>Wiki - Факультет компьютерных наук - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cs.hse.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Glebshp"/>
	<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Glebshp"/>
	<updated>2026-09-22T13:16:54Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22532</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22532"/>
		<updated>2017-01-31T16:17:21Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Семинары */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Хеш-таблицы, открытая и закрытая адресация. Способы сканирования. Масштабирование размера и деамортизация оценок.&lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Сбалансированные деревья поиска. Декартово дерево. Декартово дерево по неявному ключу.&lt;br /&gt;
&lt;br /&gt;
* 11 января 2017. Задачи о запросах на отрезке. Префиксные суммы, разреженные таблицы, дерево отрезков.&lt;br /&gt;
&lt;br /&gt;
* 12 января 2017. Групповые операции в деревьях отрезков. Двумерные деревья отрезков.&lt;br /&gt;
&lt;br /&gt;
* 19 января 2017. Задача о наименьшем общем предке. Сведение к задаче минимума на отрезке. Алгоритм Фараха-Колтона и Бендера решения задачи минимума на отрезке.&lt;br /&gt;
&lt;br /&gt;
* 25 января 2017. Персистентные структуры данных. Персистентный стек, персистентный массив на основе дерева отрезков, персистентное декартово дерево и его основные операции.&lt;br /&gt;
&lt;br /&gt;
* 26 января 2017. Перебор комбинаторных объектов. Введение в динамическое программирование, построение объекта по номеру и получение номера по объекту. Динамическое программирование на подотрезках.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Разбор задач второго теоретического домашнего задания. &#039;&#039;&#039;[https://yadi.sk/i/zyx8ffL_3C5aTd Тест]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 14 декабря 2016. Контрольная &#039;&#039;&#039;[https://yadi.sk/i/sAq04BzI3C5cRb работа]&#039;&#039;&#039; за второй модуль. &lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Разбор задач контрольной работы и третьего теоретического домашнего задания.&lt;br /&gt;
&lt;br /&gt;
* 21 декабря 2016. Показ работ первой контрольной, апелляции.&lt;br /&gt;
&lt;br /&gt;
* 11 января 2017. Приём &#039;&#039;&#039;[https://yadi.sk/i/nQaxYYC53C5otj задач]&#039;&#039;&#039; пятого теоретического домашнего задания, темы: сбалансированные деревья поиска, декартовы деревья.&lt;br /&gt;
&lt;br /&gt;
* 12 января 2017. Разбор задач четвёртого теоретического домашнего задания.&lt;br /&gt;
&lt;br /&gt;
* 18 января 2017. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3721/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 19 января 2017. Приём &#039;&#039;&#039;[https://yadi.sk/i/nQaxYYC53C5otj задач]&#039;&#039;&#039; шестого теоретического домашнего задания, темы: запросы на отрезках, наименьший общий предок.&lt;br /&gt;
&lt;br /&gt;
* 25 января 2017. Теоретический семинар по методам оптимизации программ.&lt;br /&gt;
&lt;br /&gt;
* 26 января 2017. Разбор задач пятого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/yph6ix7d3C5xir задач]&#039;&#039;&#039; на персистентные структуры.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40  &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22531</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22531"/>
		<updated>2017-01-31T15:44:33Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Лекции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Хеш-таблицы, открытая и закрытая адресация. Способы сканирования. Масштабирование размера и деамортизация оценок.&lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Сбалансированные деревья поиска. Декартово дерево. Декартово дерево по неявному ключу.&lt;br /&gt;
&lt;br /&gt;
* 11 января 2017. Задачи о запросах на отрезке. Префиксные суммы, разреженные таблицы, дерево отрезков.&lt;br /&gt;
&lt;br /&gt;
* 12 января 2017. Групповые операции в деревьях отрезков. Двумерные деревья отрезков.&lt;br /&gt;
&lt;br /&gt;
* 19 января 2017. Задача о наименьшем общем предке. Сведение к задаче минимума на отрезке. Алгоритм Фараха-Колтона и Бендера решения задачи минимума на отрезке.&lt;br /&gt;
&lt;br /&gt;
* 25 января 2017. Персистентные структуры данных. Персистентный стек, персистентный массив на основе дерева отрезков, персистентное декартово дерево и его основные операции.&lt;br /&gt;
&lt;br /&gt;
* 26 января 2017. Перебор комбинаторных объектов. Введение в динамическое программирование, построение объекта по номеру и получение номера по объекту. Динамическое программирование на подотрезках.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Разбор задач второго теоретического домашнего задания. &#039;&#039;&#039;[https://yadi.sk/i/zyx8ffL_3C5aTd Тест]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 14 декабря 2016. Контрольная &#039;&#039;&#039;[https://yadi.sk/i/sAq04BzI3C5cRb работа]&#039;&#039;&#039; за второй модуль. &lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Разбор задач контрольной работы и третьего теоретического домашнего задания.&lt;br /&gt;
&lt;br /&gt;
* 21 декабря 2016. Показ работ первой контрольной, апелляции.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40  &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22530</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22530"/>
		<updated>2017-01-31T15:34:59Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Семинары */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Хеш-таблицы, открытая и закрытая адресация. Способы сканирования. Масштабирование размера и деамортизация оценок.&lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Сбалансированные деревья поиска. Декартово дерево.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Разбор задач второго теоретического домашнего задания. &#039;&#039;&#039;[https://yadi.sk/i/zyx8ffL_3C5aTd Тест]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 14 декабря 2016. Контрольная &#039;&#039;&#039;[https://yadi.sk/i/sAq04BzI3C5cRb работа]&#039;&#039;&#039; за второй модуль. &lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Разбор задач контрольной работы и третьего теоретического домашнего задания.&lt;br /&gt;
&lt;br /&gt;
* 21 декабря 2016. Показ работ первой контрольной, апелляции.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40  &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22529</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22529"/>
		<updated>2017-01-31T15:25:49Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Лекции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
* 9 декабря 2016. Хеш-таблицы, открытая и закрытая адресация. Способы сканирования. Масштабирование размера и деамортизация оценок.&lt;br /&gt;
&lt;br /&gt;
* 16 декабря 2016. Сбалансированные деревья поиска. Декартово дерево.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40  &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22528</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22528"/>
		<updated>2017-01-31T15:18:02Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Преподаватели и ассистенты */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || &lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40  &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22527</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22527"/>
		<updated>2017-01-31T15:17:48Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Преподаватели и ассистенты */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22526</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22526"/>
		<updated>2017-01-31T15:17:27Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Преподаватели и ассистенты */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 13:40 - 15:10, ауд. 505 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
| Валентин Бирюков ||  || Среда, 12:00-13:00, ауд. 618 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22525</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22525"/>
		<updated>2017-01-31T15:14:54Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Сроки выполнения заданий */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
[https://contest.yandex.ru/hse_algo_pilot_2017 Результаты коротких контестов]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Хеширование, сбалансированные деревья, прочие структуры данных || 23 января 2017 || 13 февраля 2017, дорешивание до 27 февраля 2017&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Деревья отрезков, LCA, разное || 19 января 2017 || 2 февраля 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 18 января 2017 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сбалансированные деревья поиска || 11 января 2017 || 25 января 2017 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
===Хеши, сбалансированные деревья, деревья отрезков и прочие структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3744/enter/ https://contest.yandex.ru/contest/3744/enter/].&lt;br /&gt;
Старт: 23 января в 18:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 3 недели + 6 часов, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Обратите внимание, что в контесте 9 задач, но оценку 10 можно получить и за 8 из них (одна бонусная).&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам необходимо пройти ревью в anytask, чтобы получить баллы за остальные задачи, как и в прошлом домашнем задании. Ревью должно быть зачтено к концу дорешивания контеста, т.е. за 5 недель, поэтому не затягивайте с его сдачей.&lt;br /&gt;
&lt;br /&gt;
По второй задаче также необходимо сдать устную часть лично Глебу: описание используемого алгоритма (т.е. дерева) с доказательством. &lt;br /&gt;
&lt;br /&gt;
Некоторые технические моменты по задачам:&lt;br /&gt;
&lt;br /&gt;
1. В обеих задачах на ревью вам может потребоваться реализовать оператор =. Чтобы избежать распространенных ошибок, почитайте как это делать правильно здесь: [https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap https://en.wikibooks.org/wiki/More_C++_Idioms/Copy-and-swap].&lt;br /&gt;
&lt;br /&gt;
2. Если в первой задаче вы реализуете итераторы, то не нужно дублировать код для const и не-const итераторов, используйте шаблоны и/или наследование. Однако в этой задаче можно избежать необходимости писать свои итераторы, если правильно хранить данные.&lt;br /&gt;
&lt;br /&gt;
3. Разберитесь в константности методов: [http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration http://stackoverflow.com/questions/751681/meaning-of-const-last-in-a-c-method-declaration].&lt;br /&gt;
&lt;br /&gt;
4. Разберитесь, в чем отличие списков инициализации конструктора от ининциализации в теле конструктора. А чтобы не дублировать код, ознакомьтесь с делегированием в конструкторах. Все это можно найти здесь: [http://en.cppreference.com/w/cpp/language/initializer_list http://en.cppreference.com/w/cpp/language/initializer_list].&lt;br /&gt;
&lt;br /&gt;
5. В первых двух задачах запрещено использовать map/set, а также их unordered-аналоги. Все остальные контейнеры использовать можно. В остальных задачах разрешено все.&lt;br /&gt;
&lt;br /&gt;
6. В первой задаче должна быть реализована именно хеш-таблица, используемый метод разрешения коллизий может быть любым.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22134</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22134"/>
		<updated>2016-12-09T00:20:25Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Длинный контест || Разное || 22 ноября 2016 || 6 декабря 2016, дорешивание до 20 декабря 2016&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22133</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22133"/>
		<updated>2016-12-09T00:18:05Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды; хеширование; амортизационный анализ || 7 декабря 2016 || 21 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22132</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22132"/>
		<updated>2016-12-09T00:16:43Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды; хеширование; амортизационный анализ || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22131</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22131"/>
		<updated>2016-12-09T00:16:18Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
| Теоретические задачи || Фиб. пирамиды, хеширование, амортизационный анализ || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 30 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Элементарные структуры и пирамиды || 25 ноября 2016 || 9 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22130</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22130"/>
		<updated>2016-12-09T00:13:39Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, темы: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, темы: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
* 25 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/d/ypNSmk2332eJ6N задач]&#039;&#039;&#039; третьего теоретического домашнего задания, темы: элементарные структуры данных, пирамиды.&lt;br /&gt;
&lt;br /&gt;
* 30 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3518/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря 2016. Разбор задач первого теоретического домашнего задания. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/ksHHKXJ232eJhV задач]&#039;&#039;&#039; для подготовки к контрольной работе.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/RoYQOe-032eJm9 задач]&#039;&#039;&#039; четвёртого теоретического домашнего задания, темы: фибоначчиевы пирамиды, хеширование, амортизационный анализ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22129</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=22129"/>
		<updated>2016-12-09T00:02:14Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Лекции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
* 2 декабря. Техника приливания меньшего к большему для объединения двух куч. Биномиальные деревья и сливаемые пирамиды на их основе. Амортизационный анализ методом потенциалов, расширяемый массив, дек с минимумом на трёх стеках.&lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Фибоначчиевы пирамиды. &lt;br /&gt;
&lt;br /&gt;
* 7 декабря. Хеширование, парадокс дней рождений, полиномиальный хеш и его применения.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, тема: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21847</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21847"/>
		<updated>2016-11-23T11:24:48Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Сортировки и порядковые статистики || 18 ноября 2016 || 2 декабря 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, тема: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21846</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21846"/>
		<updated>2016-11-23T11:24:00Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/ecgtjaRTzHyYc задач]&#039;&#039;&#039; второго теоретического домашнего задания, тема: сортировки и порядковые статистики.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября 2016. Теоретический семинар по методам тестирования и отладки программ.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21845</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21845"/>
		<updated>2016-11-23T11:14:49Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка. Поиск порядковой статистики.&lt;br /&gt;
&lt;br /&gt;
* 18 ноября. Нижняя оценка на сложность сортировки, использующей только сравнение элементов. Сортировка подсчётом, цифровая (поразрядная) сортировка, карманная сортировка. Линейность времени работы карманной сортировки на случайных данных. Метод бинарного поиска.&lt;br /&gt;
&lt;br /&gt;
* 23 ноября. Элементарные структуры данных: массив, отсортированный массив, односвязный и двусвязный списки, стек, очередь, дек. Метод амортизационного анализа методом кредитов на примере сливаемых отсортированных массивов и реализации очереди через два стека. Двоичная и k-ичная кучи.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21841</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21841"/>
		<updated>2016-11-22T22:32:03Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 Ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Длинные контесты ==&lt;br /&gt;
&lt;br /&gt;
===Сортировки, порядковые статистики, элементарные структуры===&lt;br /&gt;
&lt;br /&gt;
Ссылка на контест: [https://contest.yandex.ru/contest/3478/problems/ https://contest.yandex.ru/contest/3478/problems/].&lt;br /&gt;
Старт: 22 ноября в 21:00.&lt;br /&gt;
&lt;br /&gt;
Контест идет 2 недели + 3 часа, после чего можно будет сдавать задачи еще 2 недели, но с коэффициентом 0.5. Это будет отражено в баллах&lt;br /&gt;
за задачу в контесте.&lt;br /&gt;
&lt;br /&gt;
По первым двум задачам нужно пройти ревью. Это необходимое условие для получения баллов за остальные задачи. Ревью проводится&lt;br /&gt;
в системе [http://anytask.org/course/122 Anytask]. Перед отправкой задачи на ревью &#039;&#039;&#039;обязательно&#039;&#039;&#039; укажите в настройках свой логин в&lt;br /&gt;
контесте (тот, который вы зарегистрировали сами, а не тот, который был выдан в 1-ом модуле), если вы еще этого не сделали.&lt;br /&gt;
&lt;br /&gt;
В задачах с ревью используется другая схема тестирования. Компилируется 2 варианта вашего решения --- с включенными санитайзерами&lt;br /&gt;
и без. На маленьких тестах будет запускаться решение с санитайзерами.&lt;br /&gt;
&lt;br /&gt;
Полная строка компиляции (с санитайзерами):&lt;br /&gt;
clang++ -fsanitize=address,undefined -x c++ -std=c++14 -O2 -Wall -Werror&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на -Werror --- компилятор не должен выдавать никаких предупреждений при компиляции. Стандарт С++14.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30, ауд. 322 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || Среда, 15:00 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21723</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21723"/>
		<updated>2016-11-16T00:16:37Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Сроки выполнения заданий */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Тип задания !! Тема !! Дата выдачи !! Сроки выполнения до (включительно)&lt;br /&gt;
|-&lt;br /&gt;
| Теоретические задачи || Введение в теорвер и анализ алгоритмов || 11 ноября 2016 || 25 ноября 2016 ||&lt;br /&gt;
|-&lt;br /&gt;
| Короткий контест || Разное || 16 ноября 2016 || 25 марта 2017 (дорешивание)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 Ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21722</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21722"/>
		<updated>2016-11-16T00:10:58Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Семинары */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 Ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября 2016. Совместное решение комбинаторных и геометрических &#039;&#039;&#039;[https://yadi.sk/i/PvIzV8QRyiV9n задач]&#039;&#039;&#039; по теории вероятностей.&lt;br /&gt;
&lt;br /&gt;
* 11 ноября 2016. Приём &#039;&#039;&#039;[https://yadi.sk/i/xVmmyboeyiW43 задач]&#039;&#039;&#039; первого теоретического домашнего задания, тема: введение в теорию вероятностей, анализ алгоритмов.&lt;br /&gt;
&lt;br /&gt;
* 16 ноября 2016. Короткий личный &#039;&#039;&#039;[https://contest.yandex.ru/contest/3437/enter/ контест]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21721</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21721"/>
		<updated>2016-11-16T00:01:25Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: /* Лекции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 9 ноября. Продолжение введения в теорию вероятностей. Понятие случайной величины и математического ожидания в случае конечно множества элементарных исходов. Индикаторные случайные величины. Математическое ожидание случайной величины и его линейность. Неравенства Маркова и Чебышёва. Примеры вероятностного анализа простых случайных структур.&lt;br /&gt;
&lt;br /&gt;
* 11 Ноября. Методы доказательства корректности алгоритмов на примере квадратичных сортировок. Тривиальные методы оценки времени работы. Индуктивный метод доказательства рекуррентных оценок сложности. Сортировка слиянием и быстрая сортировка.&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Листики==&lt;br /&gt;
https://yadi.sk/d/uN86f35WyeryR&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%9E_%D1%84%D0%B0%D0%BA%D1%83%D0%BB%D1%8C%D1%82%D0%B5%D1%82%D0%B5&amp;diff=21642</id>
		<title>О факультете</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%9E_%D1%84%D0%B0%D0%BA%D1%83%D0%BB%D1%8C%D1%82%D0%B5%D1%82%D0%B5&amp;diff=21642"/>
		<updated>2016-11-09T00:38:14Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
&lt;br /&gt;
== Учебные курсы факультета компьютерных наук==&lt;br /&gt;
&lt;br /&gt;
=== Курсы за 2016/17 учебный год ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! 1 курс !! 2 курс !! 3-4 курс !! майноры&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
[[Математический анализ на ПМИ_2016/2017 | Математический анализ на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Линейная алгебра и геометрия_2016/2017 | Линейная алгебра и геометрия на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Дискретная_математика_1_2016/2017 | Дискретная математика-1 на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Основы и методология программирования_2016/2017_пилотный_поток | Основы и методология программирования на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Основы и методология программирования_2016/2017 | Основы и методология программирования на ПМИ (основной поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Алгоритмы_и_структуры_данных_на_ПМИ_(пилотный_поток) | Алгоритмы и структуры данных на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[http://hsealgebra17.wikidot.com/ Алгебра на ПИ]&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
[[Математический анализ_2016/2017 | Математический анализ-3 на ПМИ (основной поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Математически_анализ_3_на_ПМИ_(пилотный_поток) | Математический анализ-3 на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[[DM_2_2016_2017 | Дискретная математика-2 на ПМИ (основной поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Дискретная математика_2_2016/2017 | Дискретная математика-2 на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Алгоритмы и структуры данных_2_2016/2017 | Алгоритмы и структуры данных – 2 на ПМИ (основной поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Теория вероятностей_2016/2017 | Теория вероятностей на ПМИ (основной поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Теория_вероятностей_2016/2017_(пилотный_поток) | Теория вероятностей на ПМИ (пилотный поток)]]&lt;br /&gt;
&lt;br /&gt;
[[Факультатив_теория_вычислений_2016/2017 | Факультатив теория вычислений на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Факультатив_линейная алгебра_2016/2017 | Факультатив линейная алгебра]]&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
[[НИС_Машинное_обучение_и_приложения_2016/2017 | НИС Машинное обучение и приложения на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Машинное_обучение_1 | Машинное обучение 1 на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Прикладной_статистический_анализ_данных | Прикладной статистический анализ данных на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[Численные_методы_в_анализе_данных | Численные методы в анализе данных на ПМИ]]&lt;br /&gt;
&lt;br /&gt;
[[НИС_Распределенные_системы_(осень_2016) | НИС Распределенные системы]]&lt;br /&gt;
&lt;br /&gt;
||&lt;br /&gt;
&lt;br /&gt;
[[Современные_методы_машинного_обучения_(курс_майнора) | Современные методы машинного обучения (курс майнора)]]&lt;br /&gt;
&lt;br /&gt;
[[Майнор_Интеллектуальный_анализ_данных/Введение_в_программирование_2016/2017 | Введение в программирование (курс майнора)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|width=100%&lt;br /&gt;
|style=&amp;quot;vertical-align:top;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Первая колонка --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Курсы за 2015/16 учебный год ===&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Технологии программирования|Технологии программирования на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[ОиМП-2015|Основы и методология программирования на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Алгоритмы и структуры данных]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Линейная алгебра и геометрия_2015/2016 | Линейная алгебра и геометрия на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Алгебра_2015/2016 | Алгебра на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[http://hsealgebra.wikidot.com/ Алгебра на ПИ]&lt;br /&gt;
|-&lt;br /&gt;
|[[Компьютерные системы]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Математический анализ на ПМИ_2015/2016 | Математический анализ на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Факультатив_Матпрактикум | Матпрактикум (факультатив) на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Data analysis (Software Engineering)]]&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Майнор Интеллектуальный анализ данных/Введение в программирование|Введение в программирование (курс майнора) на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Майнор Интеллектуальный анализ данных/Введение в анализ данных|Введение в анализ данных (курс майнора) на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[НИС Машинное обучение и приложения|НИС Машинное обучение и приложения на ПМИ]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Архитектура компьютеров и системное программирование (ПМИ_4, 2015/2016)|Архитектура компьютеров и системное программирование (4 курс)]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Дифференциальные уравнения (2 курс, 2015/2016)| Дифференциальные уравнения]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Введение в VBA|Введение в VBA]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|style=&amp;quot;vertical-align:top;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Вторая колонка --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Курсы за 2014/15 учебный год ===&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Основы и методологии программирования]]&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Алгоритмы и структуры данных 2015 | Алгоритмы и структуры данных]]&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Анализ данных (Программная инженерия)]]&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Алгебра_2014/2015 | Алгебра]]&amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Magolego_sna_2015| MAGoLEGO Social Network Analysis]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Проектная работа ====&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Проектная работа]] &amp;lt;br /&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Учебная практика 1 курс (2016)]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Проектная работа 2 курс (2016)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Завершение двухколоночной таблицы --&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Мероприятия факультета компьютерных наук ==&lt;br /&gt;
=== Summer School 2015 ===&lt;br /&gt;
[[Introduction to Natural Language Processing|Introduction to Natural Language Processing]]&lt;br /&gt;
#[[Lecture 1. Introduction|Introduction]]&lt;br /&gt;
#[[Lecture 2. Tokenization and word counts|Tokenization and word counts]]&lt;br /&gt;
#[[Lecture 3. POS tagging. Key word and phrase extraction|POS tagging. Key word and phrase extraction]]&lt;br /&gt;
#[[Lecture 4. Parsing|Parsing]]&lt;br /&gt;
#[[Lecture 5. Language sources|Language sources]]&lt;br /&gt;
#[[Lecture 6. Synonyms and near-synonyms detection|Synonyms and near-synonyms detection]]&lt;br /&gt;
#[[Lecture 8. Suffix trees for NLP|Suffix trees for NLP]]&lt;br /&gt;
#[[NLP References|References]]&lt;br /&gt;
&lt;br /&gt;
== Архив ==&lt;br /&gt;
* [[Учебная практика 1 курс (2015)]]&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21641</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21641"/>
		<updated>2016-11-08T22:56:40Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Формула выставления итоговой оценки ==&lt;br /&gt;
В первый отчетный период, состоящий из 2 и 3 модулей 2016-17 учебного года будет использоваться следующая формула определения оценки:&lt;br /&gt;
&lt;br /&gt;
0.3 * Контесты + 0.25 * Листочки + 0.15 * Контрольные + 0.3 * Экзамен + Бонус, округлённое до ближайшего целого.&lt;br /&gt;
&lt;br /&gt;
* Короткие контесты будут проводиться в разнообразных форматах во время сдвоенных семинаров. Если не оговорено иное, то короткий контест является личным соревнованием, состоящим из 5 задач разной сложности, требующим владеть общей сообразительностью, некоторой математической подготовкой, и, возможно, различными уже изученными алгоритмами. На коротких контестах отсутствует проверка кода, если не оговорено иное, то задачи можно дорешивать вплоть до окончания текущего отчётного периода (то есть почти до экзамена), получая за каждую сданную задачу 0.5 балла вместо 1 балла (за сдачу во время контеста).&lt;br /&gt;
&lt;br /&gt;
* Длинные контесты имеют продолжительность до двух недель, и состоят в основном из задач, требующих реализации алгоритмов, изученных на лекциях. Некоторые задачи являются обязательными и проходят дополнительную ручную проверку кода. Все задачи стоят 1 балл, &#039;&#039;&#039;но чтобы получить баллы за необязательные задачи, необходимо сначала сдать все обязательные&#039;&#039;&#039;. Дорешивание длинных контестов доступно дополнительно в течение некоторого периода после его окончания (до двух недель), сданная в дорешивание задача оценивается в 0.5 балла.&lt;br /&gt;
&lt;br /&gt;
* Итоговая оценка за раздел &amp;quot;Контесты&amp;quot; определяется как 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка). Поправка по умолчанию равна примерно 1/10 от общего числа задач (то есть предполагается, что сдать все задачи вовремя крайне трудно) и может быть увеличена индивидуально для каждого студента при наличии пропусков по уважительным причинам.&lt;br /&gt;
&lt;br /&gt;
* Листочки являются теоретическими домашними заданиями. Все задачи стоят одинаково, сдавать их можно как во время семинара, когда листочек был выдан, так и во время присутственных часов. Дополнительно предусматривается возможность сдать задания в электронном виде в хорошей вёрстке. Формула оценки за данный раздел аналогична предыдущей: 10 * (баллы за короткие контесты + баллы поделить за длинные контесты) / (общее число задач - поправка).&lt;br /&gt;
&lt;br /&gt;
* В течение первого отчётного периода предполагается две контрольные работы (по одной в каждом модуле). За каждую контрольную студент получает оценку от 0 до 10, итоговая оценка за данный раздел ставится как среднее арифметическое этих двух, или определяется по одной оценке, если вторую контрольную студент пропустил по уважительной причине. Если студент пропускает по уважительной причине обе контрольные работы, то для него изменяется итоговая формула оценки.&lt;br /&gt;
&lt;br /&gt;
* За экзамен студент получает оценку от 0 до 10.&lt;br /&gt;
&lt;br /&gt;
* Бонус. Эта графа определяет произвольные баллы, которые могут быть прибавлены к оценке студента за различные виды деятельности и соревнований. Например, в этой графе будут использованы некоторые короткие контесты с необычным форматом.&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21640</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21640"/>
		<updated>2016-11-08T22:31:56Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/7ZcuFsSWyHXd7 задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21639</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21639"/>
		<updated>2016-11-08T22:31:33Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября 2016. Некоторые необходимые обозначения и термины для описания времени работы (и других используемых ресурсов) алгоритма. Совместное решение &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE задач.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21638</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21638"/>
		<updated>2016-11-08T22:27:23Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
* 2 ноября. Структура курса, его концепция и задачи. Введение в теорию вероятностей, понятие вероятностного пространства для случая конечного множества элементарных исходов. Условная вероятность, полная группа события. Понятие геометрической вероятности. &#039;&#039;&#039;[https://yadi.sk/i/HE2uuFrpyHXXE Заметки.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21637</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21637"/>
		<updated>2016-11-08T22:20:30Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || Среда, 14:20-15:40 || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21531</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21531"/>
		<updated>2016-11-01T18:57:11Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: добавлена ссылка на текущую успеваемость&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1reWEDjY6anDIkrcsq1uEYP2CSeofdQjnnuSuVMxiGQo/edit?usp=sharing Текущая успеваемость]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21530</id>
		<title>Алгоритмы и структуры данных на ПМИ (пилотный поток)</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BD%D0%B0_%D0%9F%D0%9C%D0%98_(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82%D0%BD%D1%8B%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA)&amp;diff=21530"/>
		<updated>2016-11-01T18:54:45Z</updated>

		<summary type="html">&lt;p&gt;Glebshp: Создана статья для курса Алгоритмы и структуры данных пилотного потока&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Лектор:&#039;&#039;&#039; [https://www.hse.ru/org/persons/164692936 Глеб Евстропов]&lt;br /&gt;
&lt;br /&gt;
[https://yadi.sk/i/FI1FSYuSxx3LN Предполагаемая программа на 4 модуля]&lt;br /&gt;
&lt;br /&gt;
== Сроки выполнения заданий ==&lt;br /&gt;
&lt;br /&gt;
== Лекции ==&lt;br /&gt;
&lt;br /&gt;
== Семинары ==&lt;br /&gt;
&lt;br /&gt;
== Рекомендуемая литература ==&lt;br /&gt;
# Кормен, Лейзерсон, Ривест, Штайн. &#039;&#039;Алгоритмы: построение и анализ&#039;&#039;&lt;br /&gt;
# [http://biblio.mccme.ru/node/5066/shop Дасгупта, Пападимитриу, Вазирани. &#039;&#039;Алгоритмы&#039;&#039;]&lt;br /&gt;
# Корте, Фиген. &#039;&#039;Комбинаторная оптимизация. Теория и алгоритмы&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Преподаватели и ассистенты==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Преподаватель !! Подгруппа !! Присутственные часы&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/164692936 Глеб Евстропов] || 161-1 || Среда, 15:10 - 16:30 ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/137640601 Павел Мельничук] || 161-2 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/165212894 Станислав Артюхин] || 163-1 || ||&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.hse.ru/org/persons/144545940 Алексей Панов] || 163-2 || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Тиунов ||  || || &lt;br /&gt;
|-&lt;br /&gt;
| Александр Зойкин ||  || || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Учебные контесты ==&lt;/div&gt;</summary>
		<author><name>Glebshp</name></author>
	</entry>
</feed>