1. На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о длине этих дорог в километрах.
|
Так как таблицу и схему рисовали независимо друг от друга, нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите длину дороги от пункта В до пункта Е. В ответе запишите целое число.
2. Логическая функция F задаётся выражением (x ∨ y) ∧ ¬(y ≡ z) ∧ ¬w. На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.
Переменная 1 | Переменная 2 | Переменная 3 | Переменная 4 | Функция |
---|---|---|---|---|
1 | 1 | 1 | ||
0 | 1 | 0 | 1 | |
1 | 1 | 0 | 1 |
В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и фрагмент таблицы истинности:
Переменная 1 | Переменная 2 | Функция |
---|---|---|
??? | ??? | F |
0 | 1 | 0 |
Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.
3. В файле приведён фрагмент базы данных «Продукты» о поставках товаров в магазины районов города. База данных состоит из трёх таблиц.
Таблица «Движение товаров» содержит записи о поставках товаров в магазины в течение первой декады июня 2021 г., а также информацию о проданных товарах. Поле Тип операции содержит значение Поступление или Продажа, а в соответствующее поле Количество упаковок, шт. занесена информация о том, сколько упаковок товара поступило в магазин или было продано в течение дня. Заголовок таблицы имеет следующий вид.
ID операции | Дата | ID магазина | Артикул | Тип операции | Количество упаковок, шт. | Цена, руб./шт. |
Таблица «Товар» содержит информацию об основных характеристиках каждого товара. Заголовок таблицы имеет следующий вид.
Артикул | Отдел | Наименование | Ед. изм. | Количество в упаковке | Поставщик |
Таблица «Магазин» содержит информацию о местонахождении магазинов. Заголовок таблицы имеет следующий вид.
ID магазина | Район | Адрес |
На рисунке приведена схема указанной базы данных.
Используя информацию из приведённой базы данных, определите, сколько рублей выручили магазины Октябрьского района от продажи риса (любого вида) за период с 1 по 10 июня включительно.
В ответе запишите только число.
4. По каналу связи передаются сообщения, содержащие только буквы А, Б, В, Г, Д, Е. Для передачи используется неравномерный двоичный код, удовлетворяющий условию Фано; для букв A, Б, В используются такие кодовые слова: А — 1, Б – 010, В – 001.
Какова наименьшая возможная суммарная длина всех кодовых слов? Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова. Коды, удовлетворяющие условию Фано, допускают однозначное декодирование.
5. Автомат получает на вход четырёхзначное число. По этому числу строится новое число по следующим правилам.
1. Складываются отдельно первая и вторая цифры, вторая и третья цифры, а также третья и четвёртая цифры.
2. Из полученных трёх чисел выбираются два наибольших и записываются друг за другом в порядке неубывания без разделителей.
Пример. Исходное число: 9575. Суммы: 9 + 5 = 14; 5 + 7 = 12; 7 + 5 = 12. Наибольшие суммы: 14, 12.
Укажите наименьшее число, при обработке которого автомат выдаёт результат 1517.
6. Определите, что будет напечатано в результате выполнения программы (записанной ниже на разных языках программирования):
Бейсик | Паскаль |
---|---|
Dim s, k As Integer s = 0 k = 1 while k < 11 s = s + k k = k + 1 End While Console.Write(s) | var s, k : integer; begin s:=0; k:=1; while k<11 do begin s:=s+k; k:=k+1; end; write(s); end. |
Си++ | Алгоритмический язык |
#include <iostream> using namespace std;
int main(){ int s, k; s = 0; k = 1; while (k < 11) { s = s + k; k = k + 1; } cout « s « endl; } | нач цел s, k s:=0 k:=1 нц пока k < 11 s:=s+k; k:=k+1 кц вывод s кон |
Python | |
s = 0 k = 1 while k < 11: s += k k += 1 print(s) |
7. Какой минимальный объём памяти (в Кбайт) нужно зарезервировать, чтобы можно было сохранить любое растровое изображение размером 128×128 пикселей при условии, что в изображении могут использоваться 256 различных цветов? В ответе запишите только целое число, единицу измерения писать не нужно.
8. Алексей составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Алексей использует 5-буквенные слова, в которых есть только буквы A, B, C, X, причём буква X может появиться на первом месте или не появиться вовсе. Сколько различных кодовых слов может использовать Алексей?
9. Электронная таблица содержит результаты ежечасного измерения температуры воздуха на протяжении трёх месяцев. Определите, сколько раз за время наблюдений суточные колебания температуры (разность между максимальной и минимальной температурой в течение суток) превышали 17 градусов.
10. С помощью текстового редактора определите, сколько раз, не считая сносок, встречается слово «дом» или «Дом» в тексте романа в стихах А. С. Пушкина «Евгений Онегин». Другие формы слова «дом», такие как «дома», «домой» и т. д., учитывать не следует. В ответе укажите только число.
11. Выбор режима работы в некотором устройстве осуществляется установкой ручек тумблеров, каждая из которых может находиться в одном из пяти положений. Каково минимальное количество необходимых тумблеров для обеспечения работы устройства на 37 режимах.
12. Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду сместиться на (a, b), где a, b – целые числа. Эта команда перемещает Чертёжника из точки с координатами (x, y) в точку с координатами (x + a; y + b).
Например, если Чертёжник находится в точке с координатами (4, 2), то команда сместиться на (2, -3) переместит Чертёжника в точку (6, -1).
Цикл
ПОВТОРИ число РАЗ
последовательность команд
КОНЕЦ ПОВТОРИ
означает, что последовательность команд будет выполнена указанное число раз (число должно быть натуральным).
Чертёжнику был дан для исполнения следующий алгоритм (буквами n, a, b обозначены неизвестные числа, n>1):
НАЧАЛО
сместиться на (60, 100)
ПОВТОРИ n РАЗ
сместиться на (a, b)
сместиться на (33, 44)
КОНЕЦ ПОВТОРИ
сместиться на (13, 200)
сместиться на (-1, 60)
КОНЕЦ
Укажите наибольшее возможное значение числа n, для которого найдутся такие значения чисел a и b, что после выполнения программы Чертёжник возвратится в исходную точку.
13. На рисунке изображена схема дорог, связывающих города А, Б, В, Г, Д, Е, К, Л, М, Н, П, Р, Т. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город Т?
14. В какой системе счисления выполняется равенство 12 · 13 = 222?
В ответе укажите число – основание системы счисления.
15. Для какого наибольшего целого неотрицательного числа А выражение
(x · y < 140) ∨ (y > A) ∨ (x > A)
тождественно истинно, т. е. принимает значение 1 при любых целых неотрицательных x и y?
16. Ниже на пяти языках программирования записан рекурсивный алгоритм F.
Бейсик | Python |
---|---|
SUB F(n) PRINT n IF n > 1 THEN F(n - 1) F(n - 3) END IF END SUB | def F(n): print(n) if n > 1: F(n - 1) F(n - 3) |
Паскаль | Алгоритмический язык |
procedure F(n: integer); begin writeln(n); if n > 1 then begin F(n - 1); F(n - 3) end end | алг F(цел n) нач вывод n, нс если n > 1 то F(n - 1) F(n - 3) все кон |
C++ | |
void F(int n) { cout << n; if (n > 1) { F(n - 1); F(n - 3); } } |
Чему равна сумма всех чисел, напечатанных на экране при выполнении вызова F(6)?
17. Файл содержит последовательность неотрицательных целых чисел, не превышающих 10 000. Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на 3, а их сумма делится на 5. В ответе запишите два числа: сначала количество найденных пар, а затем – максимальную сумму элементов таких пар.
Например, в последовательности (2 3 7 8 9) есть две подходящие пары: (2 3) и (3 7), в ответе для этой последовательности надо записать числа 2 и 10.
Ответ:
18. Квадрат разлинован на N×N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вверх. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вверх — в соседнюю верхнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Откройте файл. Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой нижней клетки в правую верхнюю. В ответ запишите два числа друг за другом без разделительных знаков — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N×N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
1 | 8 | 8 | 4 |
10 | 1 | 1 | 3 |
1 | 3 | 12 | 2 |
2 | 3 | 5 | 6 |
Для указанных входных данных ответом должна быть пара чисел 35 и 15.
19. Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может
увеличить количество камней в куче в два раза.
Например, пусть в одной куче 6 камней, а в другой 9 камней; такую позицию мы будем обозначать (6, 9). За один ход из позиции (6, 9) можно получить любую из четырёх позиций: (7, 9), (12, 9), (6, 10), (6, 18). Чтобы делать ходы, у каждого игрока есть неограниченное количество камней.
Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 50. Победителем считается игрок, сделавший последний ход, то есть первым получивший позицию, в которой в кучах будет 50 или больше камней.
В начальный момент в первой куче было 8 камней, во второй куче — S камней, 1 ≤ S ≤ 41.
Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит, описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по ней игрока, которые не являются для него безусловно выигрышными, то есть не гарантируют выигрыш независимо от игры противника.
Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Укажите минимальное значение S, когда такая ситуация возможна.
20. Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может
увеличить количество камней в куче в два раза.
Например, пусть в одной куче 6 камней, а в другой 9 камней; такую позицию мы будем обозначать (6, 9). За один ход из позиции (6, 9) можно получить любую из четырёх позиций: (7, 9), (12, 9), (6, 10), (6, 18). Чтобы делать ходы, у каждого игрока есть неограниченное количество камней.
Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 50. Победителем считается игрок, сделавший последний ход, то есть первым получивший позицию, в которой в кучах будет 50 или больше камней.
В начальный момент в первой куче было 8 камней, во второй куче — S камней, 1 ≤ S ≤ 41.
Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит, описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по ней игрока, которые не являются для него безусловно выигрышными, то есть не гарантируют выигрыш независимо от игры противника.
Найдите два таких значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
— Петя не может выиграть за один ход;
— Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания без разделительных знаков.
21. Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может
увеличить количество камней в куче в два раза.
Например, пусть в одной куче 6 камней, а в другой 9 камней; такую позицию мы будем обозначать (6, 9). За один ход из позиции (6, 9) можно получить любую из четырёх позиций: (7, 9), (12, 9), (6, 10), (6, 18). Чтобы делать ходы, у каждого игрока есть неограниченное количество камней.
Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 50. Победителем считается игрок, сделавший последний ход, то есть первым получивший позицию, в которой в кучах будет 50 или больше камней.
В начальный момент в первой куче было 8 камней, во второй куче — S камней, 1 ≤ S ≤ 41.
Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит, описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по ней игрока, которые не являются для него безусловно выигрышными, то есть не гарантируют выигрыш независимо от игры противника.
Найдите минимальное значение S, при котором одновременно выполняются два условия:
— у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
— у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
22. Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает числа: a и b. Укажите наибольшее четырехзначное число x, при вводе которого алгоритм печатает сначала 5, а потом 7.
Бейсик | Python |
---|---|
DIM X, Y, A, B AS INTEGER A = 10 B = 0 INPUT X WHILE X > 0 Y = X MOD 10 X = X \ 10 IF Y < A THEN A = Y IF Y > B THEN B = Y WEND PRINT A PRINT B | a = 10 b = 0 x = int(input()) while x > 0: y = x % 10 x = x // 10 if y < a: a = y if y > b: b = y print(a) print(b) |
Паскаль | Алгоритмический язык |
var x, y, a, b: integer; begin a := 10; b := 0; readln(x); while x > 0 do begin y := x mod 10; x := x div 10; if y < a then a := y; if y > b then b := y; end; writeln(a); writeln(b) end. | алг нач цел x, y, a, b a := 10 b := 0 ввод x нц пока x > 0 y := mod(x, 10) x := div(x, 10) если y < a то a := y все если y > b то b := y все кц вывод a, нс, b кон |
Си++ | |
#include <iostream> using namespace std; int main() { int x, y, a, b; a = 10; b = 0; cin >> x; while (x > 0) { y = x % 10; x = x / 10; if (y < a) a = y; if (y > b) b = y; } cout << a << endl << b << endl; } |
23. Исполнитель Осень16 преобразует число на экране.
У исполнителя есть три команды, которым присвоены номера:
1) Прибавить 1;
2) Прибавить 2;
3) Прибавить 4.
Первая команда увеличивает число на экране на 1, вторая увеличивает его на 2, третья — увеличивает на 4.
Программа для исполнителя Осень16 — это последовательность команд.
Сколько существует программ, для которых при исходном числе 1 результатом является число 15 и при этом траектория вычислений содержит число 8?
Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 10, 11.
24. Текстовый файл состоит не более чем из 106 символов A, B и C. Определите максимальное количество идущих подряд символов C.
Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма.
25.
Найдите 5 чисел больших 500000, таких, что среди их делителей есть число, оканчивающееся на 8, при этом этот делитель не равен 8 и самому числу. В качестве ответа приведите 5 наименьших чисел, соответствующих условию.
Формат вывода: для каждого из 5 таких найденных чисел в отдельной строке сначала выводится само число, затем минимальный делитель, оканчивающийся на 8, не равный 8 и самому числу.
Ответ:
26. Организация купила для своих сотрудников все места в нескольких подряд идущих рядах на концертной площадке. Известно, какие места уже распределены между сотрудниками. Найдите ряд с наибольшим номером, в котором есть два соседних места, таких что слева и справа от них в том же ряду места уже распределены (заняты). Гарантируется, что есть хотя бы один ряд, удовлетворяющий условию. В ответе запишите два целых числа: номер рядя и наименьший номер места из найденных в этом ряду подходящих пар.
Входные данные.
В первой строке входного файла находится одно число: N — количество занятых мест (натуральное число, не превышающее 10 000). В следующих N строках находятся пары чисел: ряд и место выкупленного билета (числа не превышают 100 000).
В ответе запишите два целых числа: сначала максимальный номер ряда, где нашлись обозначенные в задаче места и минимальный номер места.
Пример входного файла:
6
50 12
50 15
60 157
60 160
60 22
60 25
Для данного примера ответом будет являться пара чисел 60 и 23.
Ответ:
27. По каналу связи передавалась последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно. Затем передаётся контрольное значение последовательности — наибольшее число R, удовлетворяющее следующим условиям:
1) R — произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);
2) R делится на 14.
Если такого числа R нет, то контрольное значение полагается равным 0. В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.
Программа должна напечатать одно число — вычисленное контрольное значение, соответствующую условиям задачи.
Входные данные.
Даны два входных файла (файл A и файл B), каждый из которых содержит в первой строке количество чисел N (1 ≤ N ≤ 100000). В каждой из последующих N строк записано одно натуральное число, не превышающее 1000.
Пример организации исходных данных во входном файле:
6
77
14
7
9
499
100
Пример выходных данных для приведённого выше примера входных данных:
7700
В ответе укажите два числа: сначала значение искомое контрольное значение для файла А, затем для файла B.
Ответ:
Комментариев нет:
Отправить комментарий