Раздел: 1С:Клуб программистов для школьников

1С: Клуб программистов: Алгоритмы. Олимпиадное программирование. (Модуль 1)

Олимпиадное программирование
Цена
Цена за курс 6800 руб.

Длительность курса: 24 часов/дней.


Расписание занятий по курсу:

Дата Город Формат Записаться

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

После успешного окончания обучения на курсе «Алгоритмы. Олимпиадное программирование»  Вы получите свидетельство 1С, признанное не только в России, но и за рубежом.

Описание и требования

Категория слушателей: школьники 7-10 классов

По окончании курса слушатели смогут:

  • Легко решать задачи обработки матриц: линейный поиск, переворот, максимумы и минимумы.
  • Приступите к основам высшего пилотажа в программировании – алгоритмам обработки графов, стеков и очередей.
  • Полученных знаний и навыков Вам хватит, чтобы начать выступать на олимпиадах по программированию.

Продолжительность курса: 24 ак. ч./12 занятий

Содержание курса

Модуль 1.

Занятие №1. Знакомство

  • Алгоритмы
  • Тестирующая система

Занятие №2. Типы данных и отладка

  • Типы данных в Java
  • Примитивные типы
  • Объекты
  • Классы-обертки
  • BigInteger и BigDecimal
  • Отладка

Занятие №3. Решение задач из области арифметики

  • Проверка на четность
  • Немного теории
  • Цифры числа
  • Получение цифр числа
  • Проверка на простоту
  • Сумма делителей
  • Количество делителей
  • Разложение на простые множители

Занятие №4. НОД(GCD) и НОК(LCM)

  • Немного теории
  • Немного о задачах

Занятие №5. Однопроходные алгоритмы

  • Чтение
  • Сумма элементов
  • Максимум из всех
  • Максимум из четных
  • Второй максимум
  • Немного о задачах
  • Чтение больших объемов данных
  • Пример использования класса StreamTokenizer для быстрого чтения последовательности чисел

Занятие №6. Массивы

  • Создание массива
  • Ввод (считывание) массива из N элементов
  • Вывод всех элементов массива
  • Поиск максимума
  • Поиск индекса максимального
  • Поиск индекса заданного числа в массиве
  • Вывод массива в обратном порядке
  • Косвенная адресация

Занятие №7. Сортировка массива

  • Сортировка выбором (метод минимума)
  • Немного теории
  • Метод сортировки обменами (метод пузырька)

Занятие №8. Символы и строки в Java

  • Символы
  • Класс String
  • Создание строки
  • Чтение строки
  • Длина строки
  • Сравнение строк
  • Добавление к строке
  • Преобразование различных типов в строку и обратно
  • Извлечение символа и подстроки
  • Поиск в строке
  • Функции замены
  • Разворот строки

Занятие №9. Двумерные массивы

  • Создание и «стандартное» чтение
  • Вывод массива в виде таблицы
  • Cумма всех элементов
  • Сумма элементов главной диагонали
  • Неровные массивы

Занятие №10. Графы I. Определения, хранение

  • Немного теории
  • Основные понятия
  • Деревья
  • Способы хранения графов
  • Способ №0. Иногда граф можно вообще не хранить специальным образом
  • Способ №1. Матрица смежности
  • Способ №2. Список ребер
  • Способ №3. Списки смежности

Занятие №11. Стек и очередь

  • Стек (Stack)
  • Очередь (Queue)

Занятие №12. Графы II. Поиск в ширину

  • BFS (Breadth-first search)
  • BFS в графе, заданном матрицей смежности G
  • Применения алгоритма поиска в ширину
  • Поиск кратчайших путей из данной
  • Немного теории
  • Поиск компонент связности

Документы об окончании

Свидетельство 1C

Свидетельство 1C

Сертификат Учебного центра Трайтек

Сертификат Учебного центра "Трайтек"