вторник, 14 января 2025 г.

По итогам муниципального этапа ВсОШ по информатике 2024-2025

 

Контесты муниципального этапа ВсОШ по информатике 2024-2025 учебного года

https://contest.yandex.ru/contest/69577/ - для 7-8 класса

https://contest.yandex.ru/contest/69549/ - для 9-11 класса

Решения жюри

7-8 класс

9-11 класс

Для подготовки к региональному этапу:

https://algocode.ru/vsosh2023_reg/

Программа

Лекция 1: «Сложность, тестирование, особые случаи»
Лекция 2: «Линейный поиск»
Разбор домашнего задания по лекции 1 и 2
Лекция 3: «Множества»
Лекция 4: «Словари и сортировка подсчётом»
Разбор домашнего задания по лекции 3 и 4
Лекция 5: «Префиксные суммы и два указателя»
Лекция 6: «Бинарный поиск»
Разбор домашнего задания по лекции 5 и 6
Лекция 7: «Сортировка событий»
Лекция 8: «Деревья»
Разбор домашнего задания по лекции 7 и 8

Михаил Густокашин
Директор центра студенческих олимпиад ФКН ВШЭ

 

пятница, 18 ноября 2022 г.

Результаты Командной олимпиады по программированию


18 ноября в рамках "Недели математики и информатики" состоялась Командная олимпиада по программированию среди учащихся 8-10 классов. Для олимпиады учащимися 11д класса были придуманы 14 задач. 

На олимпиаду зарегистрировались 4 команды из 8д, 9д, 9б классов. Победила команда "Python++" из учащихся 9Б класса:

  1. Борисенко Владислав 
  2. Шаповалов Юрий
  3. Журун Антон
Для всех желающих - можете решить эти задания, перейдя по ссылке https://contest.yandex.ru/contest/43131/enter/

воскресенье, 2 октября 2022 г.

Основные алгоритмы для успешного выполнения заданий ЕГЭ

Знание алгоритмов для ЕГЭ особенно важно, т.к. быстрый алгоритм позволит не задерживаться на конкретной задаче и быстро найти решение. Остановимся на алгоритмах с целыми числами:

  1. определение всех делителей натурального числа
  2. определение всех простых делителей натурального числа
  3. определение простоты натурального числа
  4. определение всех простых делителей до заданного N (решето Эратосфена)
  5. алгоритм Евклида для нахождение наибольшего общего делителя
  6. перевод из десятичной системы счисления в другую и  обратно
  7. определение цифр числа
  8. определение кратности числа
Для работы с массивами полезно знать алгоритмы:
  1. сортировка подсчетом
  2. быстрая сортировка, сортировка по двум и более критериям
  3. двоичный поиск
  4. последовательный поиск максимального/минимального элемента в массиве
  5. определение максимальной/минимальной частичной суммы последовательности
  6. определение наибольшей подпоследовательности подряд идущих элементов одинаковых, возрастающей, убывающей и по другим условиям

вторник, 12 октября 2021 г.

Задать разделитель при вводе

Иногда требуется считать данные, которые разделены не пробелом, а другим символом, например, точка в IP-адресе или слэш в дате и т.д. В Python за это отвечает функция split():

a,b,c,d = input().split('.')
day, mounth, year = input().split('/')

Как реализовать это в С++:

void vvodIP()
{
string a, b, c, d;
getline(cin, a, '.');
getline(cin, b, '.');
getline(cin, c, '.');
getline(cin, d, '\n');
cout << a << endl << b << endl << c << endl << d;
}

void vvodData()
{
int day, mounth, year;
char c;
cin >> day >> c >> mounth >> c >> year;
cout << day << endl << mounth << endl << year << endl;
}