Инструкция по выполнению работы
Часть 1 содержит 18 заданий с выбором ответа. К каждому заданию дается 4 варианта ответа, из которых только один правильный.
Часть 2 состоит из 10 заданий с кратким ответом (к этим заданиям вы должны самостоятельно сформулировать и записать ответ).
Часть 3 состоит из 4 заданий. Для выполнения заданий этой части вам необходимо написать развернутый ответ в произвольной форме.
Выполняйте задания в том порядке, в котором они даны. Если какое-то задание вызывает у вас затруднение, пропустите его и постарайтесь выполнить те, в ответах на которые вы уверены. Если после выполнения всей работы у вас останется время, вы сможете вернуться к пропущенным заданиям.
За каждый правильный ответ в зависимости от сложности задания дается один или более баллов. Баллы, полученные вами за все выполненные задания, суммируются. Постарайтесь выполнить как можно больше заданий и набрать наибольшее количество баллов.
При выполнении заданий этой части из четырех предложенных вам вариантов ответа выберите один правильный. В бланке ответов № 1 под номером выполняемого вами задания (А1–А18) поставьте знак «х» в клеточку, номер которой соответствует номеру выбранного вами ответа.
1) 101011002
2) 101010102
3) 101010112
4) 101010002
A2 Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке длиной в 20 символов, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на
1) 320 бит 2) 20 бит 3) 160 байт 4) 20 байт
A3 Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы:
Символ «?» (вопросительный знак) означает ровно один произвольный символ.
Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность.
Определите, по какой из масок будет выбрана указанная группа файлов:
1234.xls
23.xml
234.xls
23.xml
1) *23*.?x*
2) ?23?.x??
3) ?23?.x*
4) *23*.???
1) 3518
2) 1258
3) 5516
4) 7516
1) 71013
2) DBCACD
3) 7A13
4) 31A7
A6 Путешественник пришел в 08:00 на автостанцию населенного пункта ЛИСЬЕ и обнаружил следующее расписание автобусов для всей районной сети маршрутов:
1) 09:05
2) 12:15
3) 12:25
4) 13:25
1) ABFB52
Дан фрагмент таблицы истинности выражения F:
X | Y | Z | F |
0 | 1 | 1 | 0 |
1 | 1 | 1 | 1 |
0 | 0 | 1 | 1 |
1) X /\ ¬Y /\¬ Z
2) ¬X /\ ¬Y /\ Z
3) ¬X \/ ¬Y \/ Z
4) X \/ ¬Y \/ ¬Z
1) ¬A \/ B \/ ¬C
2) A \/ (B /\ C)
3) A \/ B \/ C
4) A \/ ¬B \/ ¬C
2) Первомайское
3) Победа
4) Рассвет
А) Все сканеры могли быть проданы через магазин III
Б) Все принтеры и сканеры могли быть проданы через магазин II
В) Все мониторы могли быть проданы через магазин I
Г) Ни один принтер не был продан через магазин II
1) А
2) Б
3) В
4) Г
1) 100
2) 200
3) 500
4) 1500
1) серый
2) белый
3) фиолетовый
4) черный
A15 Какое из приведенных имен удовлетворяет логическому условию:
1) ИРИНА
2) АРТЕМ
3) СТЕПАН
4) МАРИЯ
A16 В некоторой стране автомобильный номер длиной 7 символов составляют из заглавных букв (используются только 22 различные буквы) и десятичных цифр в любом порядке.
Каждый такой номер в компьютерной программе записывается минимально возможным и одинаковым целым количеством байт (при этом используют посимвольное кодирование и все символы кодируются одинаковым и минимально возможным количеством бит).
Определите объем памяти, отводимый этой программой для записи
50 номеров.
1) 350 байт
2) 300 байт
3) 250 байт
4) 200 байт
1) 9 9 9 9 9 9 9 9 9 9 9
2) 0 1 2 3 4 5 6 7 8 9 9
3) 0 1 2 3 4 5 6 7 8 9 10
4) -1 -1 0 1 2 3 4 5 6 7 8
вверх вниз влево вправо
При выполнении любой из этих команд РОБОТ перемещается на одну клетку, соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Четыре условия позволяют проверить отсутствие преград у каждой из сторон той клетки, где находится РОБОТ:
сверху свободно снизу свободно слева свободно справа свободно
В цикле
ПОКА < условие > команда
команда выполняется, пока условие истинно, иначе происходит переход на следующую строку программы.
Если РОБОТ начнет движение в сторону стены, то он разрушится и выполнение программы прервется.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА < справа свободно > вниз
ПОКА < снизу свободно > влево
ПОКА < слева свободно > вверх
ПОКА < сверху свободно > вправо
КОНЕЦ
1) 1
2) 2
3) 3
4) 4
Ответом к заданиям этой части (В1–В10) является число, последовательность букв или цифр, которые следует записать в бланк ответов № 1 справа от номера соответствующего задания, начиная с первой клеточки, без пробелов и каких-либо дополнительных символов.
Каждую букву или цифру пишите в отдельной клеточке в соответствии с приведенными образцами.
В бланк ответов впишите только число.
1. прибавь 1
2. умножь на 3
Выполняя первую из них, Калькулятор прибавляет к числу на экране 1, а выполняя вторую, утраивает его. Запишите порядок команд в программе получения из 2 числа 26, содержащей не более 6 команд, указывая лишь номера команд.
(Например, программа 21211 – это программа
прибавь 1
которая преобразует число 1 в 14.)
B4 На месте преступления были обнаружены четыре обрывка бумаги.
Следствие установило, что на них записаны фрагменты одного IP-адреса.
Криминалисты обозначили эти фрагменты буквами А, Б, В и Г.
Восстановите IP-адрес.
В ответе укажите последовательность букв, обозначающих фрагменты, в порядке, соответствующем IP-адресу.
Компьютер Толи может начать ретрансляцию данных не раньше, чем им будут получены первые 512 Кбайт этих данных. Каков минимально возможный промежуток времени (в секундах) с момента начала скачивания Толей данных до полного их получения Мишей?
В ответе укажите только число, слово «секунд» или букву «с» добавлять не нужно.
Володя: «Это сделал Саша».
Аня: «Володя лжет!»
Егор: «Маша разбила».
Саша: «Аня говорит неправду!»
Рома: «Разбила либо Маша, либо Нина…»
Маша: «Это я разбила!»
Нина: «Маша не разбивала!»
Коля: «Ни Маша, ни Нина этого не делали».
Олег: «Нина не разбивала!»
Кто разбил окно, если известно, что из этих девяти высказываний истинны
только три?
Ответ запишите в виде первой буквы имени.
Первая строка состоит из одного символа – латинской буквы «А». Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки (на i-м шаге пишется i-я буква алфавита), к ней слева дважды подряд приписывается предыдущая строка.
Вот первые 4 строки, созданные по этому правилу:
(1) A
(2) AAB
(3) AABAABC
(4) AABAABCAABAABCD
Латинский алфавит (для справки):
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Имеется задание:
«Определить символ, стоящий в n-й строке на позиции 2n–1 –5, считая от левого края цепочки».
Выполните это задание для n = 8
В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет.
Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.
((J → K) → (M /\ N /\ L)) /\ ((J /\ ¬K) → ¬(M /\ N /\ L)) /\ (M → J) = 1, где J, K, L, M, N – логические переменные?
В ответе не нужно перечислять все различные наборы значений J, K, L, M и N, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов.
Не забудьте перенести все ответы в бланк ответов № 1.
Для записи ответов на задания этой части (С1–С4) используйте бланк ответов № 2. Запишите сначала номер задания (С1, С2 и т.д.), а затем полное решение. Ответы записывайте четко и разборчиво.
1) Приведите пример таких чисел x, y, при которых программа неправильно решает поставленную задачу.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой правильный способ доработки исходной программы.)
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Если требуемое число составить невозможно, то программа должна вывести на экран слово «NO». А если возможно, то в первой строке следует вывести слово «YES», а во второй – искомое симметричное число. Если таких чисел несколько, то программа должна выводить максимальное из них. Например, пусть на вход подаются следующие символы:
Do not 911 to 09 do.
В данном случае программа должна вывести
YES
91019
За правильный ответ на каждое задание части 1 ставится 1 балл.
Если указаны два и более ответов (в том числе правильный), неверный ответ или ответ отсутствует – 0 баллов.
No задания |
Ответ | No задания | Ответ |
А1 | 4 | А10 | 2 |
А2 | 4 | А11 | 2 |
А3 | 4 | А12 | 1 |
А4 | 4 | А13 | 4 |
А5 | 3 | А14 | 1 |
А6 | 4 | А15 | 1 |
А7 | 1 | А16 | 3 |
А8 | 3 | А17 | 1 |
А9 | 4 | А18 | 3 |
№ задания | Ответ |
В1 | 81 |
В2 | 7 |
В3 | 211211 |
В4 | ВГАБ |
В5 | 6 |
В6 | 1288 |
В7 | H |
В8 | C |
В9 | 2300 |
В10 | 8 |
Внимание! При выставлении баллов за выполнение задания в «Протокол проверки ответов на задания бланка № 2» следует иметь в виду, что, если ответ отсутствует (нет никаких записей, свидетельствующих о том, что экзаменуемый приступал к выполнению задания), то в протокол проставляется «Х», а не «0».
Элементы ответа:
1) Пример: x=2, y=2 (Любая пара (x,y), для которой выполняется: y>x или y>–x.)
2) Возможная доработка (Паскаль, разбиение области на две части прямой x=0):
if (y>=x*x-2) and (y<=x) and (x>=0) or (x<=0) and (y<=-x) and (y>=x*x-2) then
write('принадлежит')
else
write('не принадлежит')
Возможная доработка (Си, разбиение на две пересекающиеся области):
if (y>=x*x-2 && (y<=x || y<=-x))
printf("принадлежит");
else
printf("не принадлежит");
Возможная доработка (Бейсик, отбрасывание части от большей области, используются вложенные условия):
IF y >= x * x - 2 THEN
IF NOT (y > x AND y > -x) THEN
PRINT "принадлежит"
ELSE
PRINT "не принадлежит"
ENDIF
ELSE
PRINT "не принадлежит"
ENDIF
Обратите внимание, что вариантов доработки может быть достаточно много, но обычно правильное описание заштрихованных областей в них представляет собой или объединение двух (или более) возможно пересекающихся областей,
или исключение одной области из другой.
При разделении области вдоль какой-либо линии точки, которые лежат на этой линии внутри области, могут быть причислены к одной части, к другой или к обеим (то есть, например, в приведенном решении на языке Паскаль одно из условий (x>=0) или (x<=0) может быть строгим).
Могут быть и другие верные способы доработки.
Баллы | Содержание верного ответа и указания к оцениванию (допускаются иные формулировки ответа, не искажающие его смысла) |
Обратите внимание! В задаче требовалось выполнить три действия: указать пример входных данных, при которых программа работает неверно, и исправить две ошибки: 1. Неправильное использование условного оператора, в результате чего при невыполнении первого, второго или третьего условия программа не выдавала ничего (отсутствуют случаи ELSE). 2. Приведенным трем ограничениям не удовлетворяют точки плоскости, у которых (y>–x) и (y≥x2–2) и (y≤x), а также точки, у которых (y>x) и (y≥x2–2) и (y≤–x). |
|
3 | Правильно выполнены все три действия. Исправлены обе ошибки. В работе (во фрагментах программ) допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора решения. |
2 | 1. Правильно выполнены два действия из трех (исправлены обе ошибки, но не указан/неправильно указан пример требуемых входных данных, либо правильно указан пример входных данных, программа правильно работает при большем числе случаев, чем исходная, но не при всех). Например, выдает «не принадлежит» и для всех точек, у которых (y>x) и (y>–x). При этом не допускается, чтобы программа неправильно работала при тех входных данных, при которых раньше работала правильно. ИСКЛЮЧЕНИЕ! При написании операций сравнения допускается одно неправильное использование строгих/нестрогих неравенств (считается несущественной ошибкой, погрешностью записи). Например, вместо (y<=x) используется (y<x) (даже если программа при этом стала неверно работать при тех входных данных, при которых раньше работала правильно). 2. Или выполнены все три действия, но при этом в логическом выражении неверно учтены приоритеты логических операций (не расставлены или неправильно расставлены скобки в выражениях). |
1 | Правильно выполнено только одно действие из трех. То есть, либо только приведен пример входных данных, либо он не приведен (или приведен неверно), но имеется программа, корректно работающая при большем количестве входных данных, чем исходная, но не при всех. При оценивании этого задания на 1 балл допускается не учитывать корректность работы программы на точках границ областей (вместо нестрогих неравенств в решении были использованы строгие неравенства, или наоборот). |
0 | Все пункты задания выполнены неверно (пример входных данных не указан или указан неверно, программа не приведена, либо приведенная программа корректно работает в не большем количестве случаев, чем исходная). |
3 | Максимальный балл |
Баллы | Содержание верного ответа и указания к оцениванию (допускаются иные формулировки ответа, не искажающие его смысла) |
||||||||
2 |
Предложен правильный алгоритм, выдающий верное значение. Допускается запись алгоритма на другом языке, использующая аналогичные переменные. В случае, если язык программирования использует типизированные переменные, описания переменных должны быть аналогичны описаниям переменных на естественном языке. Использование нетипизированных или необъявленных переменных возможно только в случае, если это допускается языком программирования, при этом количество переменных и их идентификаторы должны соответствовать условию задачи. В алгоритме, записанном на языке программирования, допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора программы.
|
||||||||
1 | В любом варианте решения присутствует не более одной ошибки из числа следующих: Значения переменных X и Y находятся верно, однако среднее арифметическое считается неверно (например, производится действие X/N или неверно происходит преобразование типов при делении). Неверно осуществляется проверка значения элемента массива на нечетность. Не инициализируются или неверно инициализируются переменные X и Y. Отсутствует вывод ответа. Используется переменная, не объявленная в разделе описания переменных. Не указано или неверно указано условие завершения цикла. Индексная переменная в цикле не меняется (например, в цикле while). Неверно расставлены операторные скобки. |
||||||||
0 | Ошибок, перечисленных в п. 1–8, две или больше, или алгоритм сформулирован неверно. | ||||||||
2 | Максимальный балл |
Баллы | Содержание верного ответа и указания к оцениванию (допускаются иные формулировки ответа, не искажающие его смысла) |
Выигрывает второй игрок.
Для доказательства рассмотрим неполное дерево игры, оформленное в виде таблицы, где в каждой ячейке записаны пары чисел, разделенные запятой. Эти числа соответствуют количеству камней на каждом этапе игры в первой и второй кучках соответственно.
Таблица содержит все возможные варианты ходов первого игрока. Из нее видно, что при любом ходе первого игрока у второго имеется ход, приводящий к победе.
|
|
3 | Правильное указание выигрывающего игрока и его ходов со строгим доказательством правильности (с помощью или без помощи дерева игры). |
2 | Наличие в представленном решении одного из пунктов: 1. Правильное указание выигрывающего игрока, стратегии игры, приводящей к победе, при отсутствии доказательства ее правильности. 2. Правильно указан выигрывающий игрок, приведено дерево игры, но отсутствует обоснование правильности выигрывающей стратегии. 3. Правильно указан выигрыш второго игрока, рассмотрены все варианты хода первого игрока, для каждого из них правильно указан выигрывающий ответ второго игрока. Однако анализ игры не доведен до конца и отсутствует обоснование стратегии. |
1 | Наличие в представленном решении одного из пунктов: 1. Правильно указаны все варианты хода первого игрока и возможные ответы второго игрока (в том числе и все выигрышные), но неверно определены дальнейшие действия и неправильно указан победитель. 2. Правильно указан выигрыш второго игрока, но описание выигрышной стратегии неполно и для некоторых (больше одного, но не для всех) вариантов хода первого игрока правильно указан выигрывающий ответ второго игрока. |
0 | Задание не выполнено, или в представленном решении полностью отсутствует описание элементов выигрышной стратегии и отсутствует анализ вариантов первого-второго ходов играющих (даже при наличии правильного указания выигрывающего игрока). |
3 | Максимальный балл |
Баллы начисляются только за программу, которая решает задачу хотя бы для одного частного случая (например, для строк, состоящих не более чем из 255 символов), или которая умеет только определять, имеет ли задача решение.
var a:array['0'..'9'] of integer;
c, c_odd: char;
i, k: integer;
f: boolean;
begin
for c:='0' to '9' do a[c]:=0;
read(с);
while c<>'.' do
begin
if c in ['0' .. '9'] then a[c] := a[c] + 1;
read(c);
end;
k := 0; {количество цифр, встречающихся нечетное число раз}
for c := '0' to '9' do
if a[c] mod 2 = 1 then
begin
k := k + 1;
c_odd := c
end;
f := (a['0'] = 1);
for c := '1' to '9' do
if (a[c] > 1) or (a[c] = 1) and (a['0'] = 0) then f := true;
if (k > 1)or not f then writeln('NO') else
begin
writeln('YES');
for c := '9' downto '0' do
for i := 1 to a[c] div 2 do
write(c);
if k = 1 then
write(c_odd);
for c := '0' to '9' do
for i := 1 to a[c] div 2 do
write(c);
end
end.
DIM k, i, j, iodd, a(9) AS INTEGER
FOR i = 0 TO 9
a(i) = 0
NEXT
INPUT c$
DO WHILE NOT (c$ = ".")
IF c$ >= "0" AND c$ <= "9" THEN
a(ASC(c$) - ASC("0")) = a(ASC(c$) - ASC("0")) + 1
ENDIF
INPUT c$
LOOP
k = 0
IF a(0) = 1 THEN f = 1 ELSE f = 0
FOR i = 0 TO 9
IF a(i) MOD 2 = 1 THEN
k = k + 1
iodd = i
END IF
IF i > 0 AND a(i) > 1 THEN f = 1
NEXT
IF k = 1 AND a(0) = 0 THEN f = 1
IF k > 1 OR f = 0 THEN
PRINT "NO"
END
ENDIF
PRINT "YES"
FOR i = 9 TO 0 STEP -1
FOR j = 1 TO a(i) \ 2
PRINT i;
NEXT
NEXT
IF k = 1 THEN PRINT iodd;
FOR i = 0 TO 9
FOR j = 1 TO a(i) \ 2
PRINT i;
NEXT
NEXT
END
Баллы | Содержание верного ответа и указания к оцениванию (допускаются иные формулировки ответа, не искажающие его смысла) |
4 | Программа работает верно, т.е. определяет, имеет ли задача решение для любых входных данных произвольного размера, и строит максимальное искомое число, не сохраняя входные данные в строке или массиве символов. Программа просматривает входные данные один раз, в тексте программы не анализируется каждая цифра в отдельности. Допускается наличие в тексте программы одной синтаксической ошибки: пропущен или неверно указан знак пунктуации, неверно написано или пропущено зарезервированное слово языка программирования, не описана или неверно описана переменная, применяется операция, недопустимая для соответствующего типа данных (если одна и та же ошибка встречается несколько раз, то это считается одной ошибкой). |
3 | Программа работает верно, но входные данные запоминаются в массиве символов или строке, или входные данные считываются несколько раз. Возможно, каждая цифра обрабатывается явным образом (10 операторов IF, в том числе с использованием многоточия, или оператор CASE, содержащий 10 вариантов). Возможно, сохраненные входные данные сортируются одним из стандартных алгоритмов сортировки путем перестановки входных символов, или ответ формируется путем перестановки входных цифр. Допускается наличие от одной до трех синтаксических ошибок, описанных выше. Три балла также выставляется, если в эффективной программе, удовлетворяющей критериям выставления 4 баллов, есть одна ошибка, не относящаяся к алгоритму решения задачи в целом, например, ошибка в принципиально верно организованном вводе данных или в обработке числа, состоящего из одних нулей или из четного числа нулей и одной ненулевой цифры. |
2 | Программа работает в целом верно, эффективно или нет, но, возможно, выводит значение не максимального искомого числа. Возможно, в реализации алгоритма содержатся 1–2 ошибки (используется знак «/» вместо «\», «div» вместо «mod», выход за границу массива, перевод символов в числа, используется знак «<» вместо «<=», «or» вместо «and» и т.п.). Возможно, некорректно организовано считывание входных данных. Допускается наличие от одной до пяти синтаксических ошибок, описанных выше. |
1 | Программа, возможно, неверно работает при некоторых входных данных, например, при наличии цифры, которая встречается нечетное число раз. Возможно, выводит только «NO» или «YES» и не выводит искомое число, или выводит его неверно. При использовании сортировки допущены ошибки в ее реализации. Допускается до 4 различных ошибок в реализации алгоритма, в том числе описанных в критериях присвоения двух баллов. Допускается наличие от одной до семи синтаксических ошибок, описанных выше. |
0 | Задание не выполнено или выполнено неверно. |
4 | Максимальный балл |