Увод в състезателното програмиране
25.00 лв.
Автор : Красимир Манев
Издателство : КЛМН
ISBN : 9789548212120
Година : 2023
Корица : мека
Страници : 248
Език : български
Описание
Книгата е предназначена за всички, които искат да започнат занимания по състезателно програмиране от самото начало. Подходяща е и за ученици от четвърти/пети клас, които се подготвят да участват в група Е на националните състезания по програмиране.
За да работи с книгата читателят трябва да е овладял достатъчно добре основите на езика за програмиране С/С++, използван както в националните, така и в международните състезания. Важен фактор за успешно участие в състезанията също е и много добрата математическа подготовка. Тъй като част от използвания математически материал не се изучава в редовните часове по математика в училище, където се налага е направено въведение в съответната тема.
Книгата съдържа много решени задачи за илюстриране на една или друга алгоритмична техника. В края на всяка глава е публикуван списък със задачи от националните състезания по програмиране, като към всяка има кратко упътване.
Съдържание :
Предговор
1. Състезания по програмиране
1.1. Състезателните задачи
1.2. Състезателните системи
1.3. Оценяване на примерната задача
1.4. Включване на стандартни функции
1.5. Забързване на входа и изхода
1.6. Програмата препроцесор на С/С++
1.7. Използване на паметта
1.8. Стандартен вход и стандартен изход
1.9. Команден интерпретатор
Теоретични упражнения
Задачи за програмиране
2. Частно и остатък при деление
2.1. Целочислено деление
2.2. Частно и остатък при отрицателен аргумент
2.3. Функциите floor и ceil
Теоретични упражнения
Задачи за програмиране
3. Подреждане на числа или знаци
3.1. Разместване на две числа
3.2. Подреждане на 3 или 4 стойности
3.3. Подреждане по два критерия
3.4. Сортиране на сложни обекти
3.5. Намиране на минимум и максимум
Задачи за програмиране
4. Бройни системи
4.1. Непозиционни бройни системи
4.2. Десетична позиционна бройна система
4.3. Двоична позиционна бройна система
4.4. Отделяне на цифрите на число
4.5. Цифрите в таблицата ASCII
4.6. Буквите в таблицата ASCII
4.7. Помощни функции
Теоретични упражнения
Задачи за програмиране
5. Мерни единици
5.1. Обичайните мерни единици
5.2. Задачи с дати
Задачи за програмиране
6. Ad hoc задачи
Задачи за програмиране
7. Задачи, изискващи цикъл
7.1. Проверка на някакво свойство
7.2. Откриване на подредици
7.3. Ad hoc задачи, изискващи цикъл
7.4. Сложност на алгоритмите
7.5. Установяване края на входа
7.6. Вложени цикли
Задачи за програмиране
8. Масиви
8.1. Едномерен масив
8.2. Откриване на подредици с масив
8.3. Плъзгане на прозорец
8.4. Низове
8.5. Честотни диаграми и мапове
8.6. Сортиране на масив
8.7. Сложност на алгоритмите за сортиране
8.8. Двумерен масив
Задачи за програмиране
9. Делимост на числа
9.1. Дефиниции и означения
9.2. Прости числа
9.3. Делители (множители)
9.4. НОД и НОК
9.5. Линейни диофантови уравнения
Задачи за програмиране
10. Още задачи
10.1. Сканиране на растер
10.2. Префиксни суми
10.3. Сливане на два сортирани масива
10.4. Трудни ad hoc задачи
Задачи за програмиране
Ресурси
Азбучен указател