Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
recipes.pdf
Скачиваний:
33
Добавлен:
22.05.2015
Размер:
322.44 Кб
Скачать

Симоненко Е. А.

СПОРТИВНОЕ ПРОГРАММИРОВАНИЕ

Сборник рецептов для программирующих на C++

Редакция от 10 сентября 2012

Краснодар

2012

Симоненко Е. А. Спортивное программирование. Сборник рецептов для программирующих на C+ +. – Краснодар, 2012. – 29 с.

Этот сборник рецептов предназначен для тех, кто готовится и участвует в соревнованиях по программированию и при этом пишет решения на C++. В этой и во всех предыдущих редакциях этого сборника автор ориентируется на начинающих спортсменов-программистов.

Сборник написан автором в свободное от работы время на основе личного опыта автора по решению задач по программированию на языке C++.

© 2010-2012 Симоненко Евгений А. <easimonenko@mail.ru>

Симоненко Евгений А. Олимпиадная подготовка по программированию

3

ОГЛАВЛЕНИЕ

 

История изменений......................................................................................................................................

4

Благодарности..............................................................................................................................................

5

Основы..........................................................................................................................................................

5

Привет, Мир!............................................................................................................................................

5

Ввод-вывод...............................................................................................................................................

5

Целые числа.............................................................................................................................................

6

Символы и строки...................................................................................................................................

8

String.......................................................................................................................................................

10

Перевод строки в целое число..............................................................................................................

11

Перевод целого числа в строку............................................................................................................

12

Случайные числа...................................................................................................................................

13

Профилирование...................................................................................................................................

14

Массивы и матрицы...................................................................................................................................

15

Объявление, размещение и инициализация массивов.......................................................................

15

Ввод массива..........................................................................................................................................

16

Вывод массива.......................................................................................................................................

18

Valarray...................................................................................................................................................

18

Vector......................................................................................................................................................

19

Матрицы.................................................................................................................................................

19

Элементарные алгоритмы.........................................................................................................................

21

Абсолютное значение целого числа....................................................................................................

21

Минимум и максимум среди двух чисел............................................................................................

21

Минимум и максимум среди трёх чисел.............................................................................................

21

Сортировка массива из трёх чисел......................................................................................................

22

Циклический сдвиг массива из трёх элементов.................................................................................

22

Разложение целого числа на его цифры..............................................................................................

22

Линейный поиск....................................................................................................................................

23

Рекурсия.................................................................................................................................................

24

Более сложные алгоритмы........................................................................................................................

25

Бинарный поиск.....................................................................................................................................

25

Циклический сдвиг массива.................................................................................................................

26

Подводные камни.......................................................................................................................................

29

Диграфы и триграфы.............................................................................................................................

29

4

Симоненко Евгений А. Олимпиадная подготовка по программированию

ИСТОРИЯ ИЗМЕНЕНИЙ

Чтобы список изменений сильно не разрастался приводятся только даты публичных выпусков, под которыми перечисляются все промежуточные изменения от одного публичного выпуска к другому.

10.09.2012

Добавлен раздел «Подводные камни» (пункт «Диграфы и триграфы»). Исправлен пункт «Случайные числа». Немного изменён стиль оформления.

25.10.2011

Небольшие исправления и добавления в пунктах «Ввод массива» и «Циклический сдвиг массива».

24.06.2011

Небольшое добавление в пункт «Ввод массива».

23.04.2011

Добавлен пункт «Профилирование».

19.04.2011

Улучшено форматирование в пункте «Рекурсия». Дополнен пункт «Вывод массива». Добавлен пункт «Случайные числа». Небольшие исправления и улучшения форматирования.

11.03.2011

Исправлены таблицы в пунктах «Символы и строки» и «String». Добавлены ссылки на задачи в пунктах «Линейный поиск» и «Бинарный поиск». Дополнен пункт «Целые числа». Дополнен пункт «String». Добавлены пункты «Перевод строки в целое число» и «Перевод целого числа в строку».

27.02.2011

В пункт «Линейный поиск» добавлена информация о поиске в C-строках. В раздел «Элементарные алгоритмы» добавлен пункт «Рекурсия». В пункте «Матрицы» исправлен параграф об использовании макроса. В пункте «Символы и строки» добавлена информация о стандартных функциях работы с символами и строками. Добавлен пункт «String».

08.02.2011

Внесены незначительные исправления, произведена перекомпоновка материала, а также дополнены разделы «Ввод-вывод», «Элементарные алгоритмы» и «Массивы» и добавлены разделы «Целые числа», «Символы и строки» и «Более сложные алгоритмы».

18.01.2011

Исправлены незначительные ошибки (относительно использования puts()) и сделаны небольшие дополнения в разделах «Элементарные алгоритмы» (добавлен алгоритм вычисления абсолютного значения целого числа) и «Массивы» (добавлена информация о memset() и memcpy()). Был также добавлен этот раздел «История изменений».

16.01.2011

Внесены значительные добавления и изменения в содержании. В частности, был добавлены разделы «Ввод-вывод» и «Элементарные алгоритмы», в остальные разделы внесены существенные дополнения и изменения.

19.11.2010

Первый публичный выпуск.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]