Открытая олимпиада по информатике и ИКТ (17 марта 2019)


ПОБЕДИТЕЛИ ОТКРЫТОЙ ОЛИМПИАДЫ ПО ИНФОРМАТИКЕ И ИКТ : Триголос А.П., Еманов Д.В., Новиков А.А., Пудовкин Д.О.

ПРИЗЕРАМИ ОЛИМПИАДЫ СТАЛИ:

  1. Зыбин В.А.
  2. Рамзайцев Д.А.
  3. Сизоненко К.С.
  4. Галкина Д.В.
  5. Кольцова С.С.
  6. Шоповалов И.Д.
  7. Захаров К.М.
  8. Щетинин В.В.
  9. Рудый Е.Д.
  10. Подгорный М.О.
  11. Файзулин Т.С.
  12. Филиппов М.И.
  13. Демахин Д.С.
  14. Будаковский А.С.
  15. Третьяков М.С.
  16. Кристев Н.А.

ПОЗДРАВЛЯЕМ ПОБЕДИТЕЛЕЙ И ПРИЗЕРОВ ОТКРЫТОЙ ОЛИМПИАДЫ ПО ИНФОРМАТИКЕ И ИКТ!

Для получения дипломов необходимо обратиться в подготовительное отделение: г.Волгоград пр.Ленина 27, учебный корпус №1, каб. 714; телефон(ы): +7 8442 60 28 48, +7 903 372 05 92; график работы: пн-чт, 8:30-17:15., пт, 8:30-16:00, перерыв с 12:30 до 13:00.

Факультет математики, информатики и физики приглашает учащихся 9-11 классов принять участие
в Открытой Олимпиаде по информатике и ИКТ.

Приказ о проведении Открытой Олимпиады.
Информационное письмо.
Положение об Открытой Олимпиаде ВГСПУ.

Олимпиада состоится 17 марта 2019 г. в аудитории 2210 учебного корпуса № 2 (ул.Академическая, 12):

10.00 — регистрация  участников,
11.00 — 14.00 — письменное выполнение заданий олимпиады.

УЧАСТНИКАМ ОЛИМПИАДЫ НЕОБХОДИМО ИМЕТЬ ПРИ СЕБЕ ПАСПОРТ!

ПРЕДВАРИТЕЛЬНАЯ РЕГИСТРАЦИЯ

Тематика заданий олимпиады:

  1. Кодирование и кодирование данных с использованием условия Фано.
  2. Определение количества информации.
  3. Позиционные системы счисления.
  4. Использование основных логических операций и законов.
  5. Анализ программы, содержащей циклы и ветвления.
  6. Анализ программы, содержащей процедуры и функции.
  7. Анализ результата работы алгоритма.
  8. Поиск и исправление ошибок во фрагменте программы.
  9. Написание программы, обрабатывающей массивы.
  10. Построение дерева игры и обоснование выигрышной стратегии.
  11. Написание программы, обрабатывающей поток данных.

Победители и призеры открытых олимпиад школьников ВГСПУ получают 3 дополнительных балла при приеме на обучение по программам бакалавриата и специалитета.

ЗАДАНИЯ ДЛЯ ПОДГОТОВКИ К ОЛИМПИАДЕ:

  1. По каналу связи передаются сообщения, содержащие только буквы В, Г, С, П, У. Для передачи используется двоичный код, допускающий однозначное декодирование: В – 01, Г — 00, С — 111.
    Укажите кратчайшее кодовое слово для буквы У, при котором код будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением.
  2. При регистрации в доменной сети университета каждому студенту первого курса выдается пароль из 10 символов, в котором могут быть использованы латинские буквы (заглавные и строчные буквы различаются) и десятичные цифры. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. В базе данных, помимо паролей пользователей, хранятся также сведения о программе и профиле обучения студента, кодируемые целым числом байт, одинаковым для всех пользователей. Для хранения сведений о 30 студентах первого курса потребовалось 540 байт. Сколько байт выделено для хранения сведений о программе и профиле обучения одного студента?
  3. Значение арифметического выражения: 97 + 319 – 21 записали в системе счисления с основанием 3. Найдите сумму цифр в этой записи. Ответ запишите в десятичной системе счисления.
  4. Укажите наибольшее целое значение А, при котором выражение (y – x > A) ∨ (x + 4y > 40) ∨ (y – 2x < –35) истинно для любых целых положительных значений x и y.
  5. Укажите наименьшее пятизначное число x, при вводе которого алгоритм печатает сначала 4, а потом 2.
    var x, y, a, b: integer;
    begin
    readln(x);
    a:=0; b:=0;
    while x > 0 do begin
    y := x mod 10;
    if y > 3 then a := a + 1;
    if y < 8 then b := b + 1;
    x := x div 10
    end;
    writeln(a); write(b);
    end.
  6. Определите, какое число выведет эта программа:
    var a, b, t, M, R: integer;
    function F(x: integer):integer;
    begin
    F := 9*(x*x-4)*(x*x-4)+25;
    end;
    begin
    a := -10; b := 10;
    M := a; R := F(a);
    for t := a to b do
    if F(t) <= R then begin
    M := t;
    R := F(t);
    end;
    writeln(M + R);
    end.
  7. Исполнитель U19 преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены номера:
    1. Вычесть 1.
    2. Вычесть 3.
    3. Разделить нацело на 2.

    При выполнении команды 3 выполняется деление нацело (остаток отбрасывается). Программа для исполнителя U19 – это последовательность команд. Сколько существует таких программ, которые исходное число 19 преобразуют в число 3?

  8. Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится сумма цифр этого числа. Программист торопился и написал программу неправильно:
    var N: longint;
    sum, d: integer;
    begin
    readln(N);
    sum := 1;
    while N > 0 do begin
    d := N mod 10;
    N := N div 10;
    sum := sum + 1;
    end;
    writeln(sum);
    end.

    Последовательно выполните следующее:

    1. Напишите, что выведет эта программа при вводе числа 256.
    2. Приведите пример такого трёхзначного числа, при вводе которого программа выдаёт правильный результат.
    3. Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:
      • выпишите строку, в которой сделана ошибка;
      • укажите, как исправить ошибку, т. е. приведите правильный вариант строки.
  9. Дан целочисленный массив из 2018 элементов, в котором записаны значения последовательных результатов измерений. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который выполняет сглаживание последовательности: каждый элемент заменяется на целочисленное среднее арифметическое данного элемента и его ближайших соседей. Считается, что у крайних эле-ментов только один сосед, а у остальных элементов – по два. Например, для исходного массива из шести элементов: 1 9 2 10 3 11 программа должна вывести (по одному числу в строке) числа 5 4 7 5 8 7.
  10. Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может:
    а) добавить в кучу один камень;
    б) увеличить количество камней в куче в три раза.

    Игра завершается в тот момент, когда количество камней в куче становится не менее 33. Если при этом в куче оказалось не более 89 камней, то победителем считается игрок, сделавший последний ход. В противном случае победителем становится его противник. В начальный момент в куче было S камней, 1 ≤ S ≤ 32.
    Задание 1. а) При каких значениях числа S Петя может выиграть в один ход? Укажите все такие значения и соответствующие ходы Пети.
    б) У кого из игроков есть выигрышная стратегия при S = 29, 30, 31? Опишите выигрышные стратегии для этих случаев.
    Задание 2. У кого из игроков есть выигрышная стратегия при S = 9, 10? Опишите соответствующие выигрышные стратегии.
    Задание 3. У кого из игроков есть выигрышная стратегия при S = 8? Постройте дерево всех партий, возможных при этой выигрышной стратегии (в виде рисунка или таблицы). На рёбрах дерева указывайте, кто делает ход, в узлах – количество камней в позиции.
  11. На вход программы поступает последовательность из N целых положительных чисел. Нужно определить количество пар различных чисел, сумма которых делится на 12.
    Описание входных и выходных данных
    В первой строке входных данных задаётся количество чисел N (1 ≤ N ≤ 1000). В каждой из последующих N строк записано одно натуральное число, не превышающее 100.
    Пример входных данных:
    8
    10
    14
    7
    13
    5
    30
    9
    6
    Пример выходных данных для приведённого выше примера входных данных:
    3
Scroll Up