Основы и методология программирования 2016/2017 пилотный поток/161-2 — различия между версиями
Melnichuk (обсуждение | вклад) (→Семинар 14.09.2015) |
Melnichuk (обсуждение | вклад) (→Семинар 19.09.2016) |
||
Строка 90: | Строка 90: | ||
Дома попробуйте обучить модели по словам, а не по буквам. | Дома попробуйте обучить модели по словам, а не по буквам. | ||
Также можно поэкспериментировать со смешением распределений по разным N. | Также можно поэкспериментировать со смешением распределений по разным N. | ||
+ | |||
+ | |||
+ | ===Семинар 21.09.2016=== | ||
+ | |||
+ | Написание структур. | ||
+ | Специализация std::less, std::equal_to, std::hash для своих структур. | ||
+ | Шаблонные параметры std::map, std:set, std::unordered_map, std::unordered_set. | ||
+ | |||
+ | Задачи | ||
+ | * поиск наиболее популярного квадрата на клетчатой плоскости по набору точек | ||
+ | * обработка запросов "содержится ли точка хотя в одном отрезке из фиксированного набора" | ||
+ | * проверка наличия вертикальной оси симметрии у набора точек | ||
+ | |||
+ | |||
+ | ===Семинар 26.09.2016=== | ||
+ | |||
+ | Написание шаблонных функций. | ||
+ | Специализация шаблонных функций. | ||
+ | Шаблонные параметры по умолчанию. | ||
+ | Написание алгоритмов, аналогичных <algorithm>. | ||
+ | |||
+ | Задачи | ||
+ | * transform | ||
+ | * partition на ForwardIterator'ах | ||
+ | * merge | ||
+ | * lower_bound |
Версия 17:06, 26 сентября 2016
Содержание
Контакты семинариста
Почта finisterra@yandex.ru
VK vk.com/finisterra
Телефон +7(915)004-91-33
Telegram lastearth
Семинар 05.09.2016
HelloWorld на C++. Знакомство с linux. Основные команды, которые следует освоить:
- ls
- cd
- vim
- g++
Также стоит посмотреть на команды
- man
- cat
- less
- grep
и попрактиковаться в перенаправлениях потоков.
Семинар 07.09.2016
Решение задач.
- числа Фибоначчи
- ASCII-таблица
- Треуголник Паскаля
- Быстрое возведение в степень
- Непарное число
Типичные ошибки и замечания по style guide'у:
- именование переменных
- инициализация переменных при создании
Полезные ссылки
Семинар 12.09.2015
Решение задач.
- Утилита head (ввод-вывод)
- gcd (работа с функциями)
- Частоты символов (ввод-вывод и вектор)
- Транспонирование матрицы (вектора векторов)
К среде надо подготовиться к контрольной по вводу-выводу, базовым конструкциям языка, циклам и функциям. Также советую познакомится с интерфейсом Яндекс.Контеста на примере тренировочного набора задач.
Семинар 14.09.2015
Домашнее задание: разбиться на пары и прислать мне на почту ревью кода напарника по всем отправленным на КР задачам. Принимается вплоть до полуночи воскресенья, то есть до конца недели.
ФИО | Оценка | Прислал ревью |
---|---|---|
Алейкин Сергей Дмитриевич | 10 | + |
Бобровский Артемий Андреевич | 6 | + |
Васильев Олег Юрьевич | 10 | |
Грицаев Матвей Григорьевич | 4 | + |
Дрынкин Роберт Робертович | 6 | |
Ершов Олег Владиславович | 6 | + |
Кочергин Владислав Константинович | 8 | + |
Лавренов Николай Артемович | 10 | + |
Лавритов Дмитрий Ильич | 6 | + |
Семенов Михаил Александрович | 4 | + |
Усов Федор Андреевич | 6 | + |
Якунчева Ирина Юрьевна | 8 | + |
Семинар 19.09.2016
Ассоциацивные массивы. Языковая статистическая модель. N-граммы.
Дома попробуйте обучить модели по словам, а не по буквам. Также можно поэкспериментировать со смешением распределений по разным N.
Семинар 21.09.2016
Написание структур. Специализация std::less, std::equal_to, std::hash для своих структур. Шаблонные параметры std::map, std:set, std::unordered_map, std::unordered_set.
Задачи
- поиск наиболее популярного квадрата на клетчатой плоскости по набору точек
- обработка запросов "содержится ли точка хотя в одном отрезке из фиксированного набора"
- проверка наличия вертикальной оси симметрии у набора точек
Семинар 26.09.2016
Написание шаблонных функций. Специализация шаблонных функций. Шаблонные параметры по умолчанию. Написание алгоритмов, аналогичных <algorithm>.
Задачи
- transform
- partition на ForwardIterator'ах
- merge
- lower_bound