Школьная олимпиада
по «Информатике и ИКТ»
11 класс
В следующих задачах необходимо написать текст программы на каком-либо языке программирования
Условия задач:
1) (2 балла)
Вывести квадрат, состоящий из NxN ячеек, заполненных числами от 1 до N2 "змейкой" (см. примеры).
Ограничения: 2 <= N <= 100.
Ввод: Число N.
Вывод: Выводится N строк по N чисел, разделённых пробелами. Не допускаются начало змейки в другом углу или другое её направление.
Примеры
Ввод 1 Ввод 2 Ввод 3
3 4 5
Вывод 1 Вывод 2 Вывод 3
1 2 3 1 2 3 4 1 2 3 4 5
8 9 4 12 13 14 5 16 17 18 19 6
7 6 5 11 16 15 6 15 24 25 20 7
10 9 8 7 14 23 22 21 8
13 12 11 10 9
2) Длинная сумма (3 балла)
Даны два целых неотрицательных числа: M и N. Найти их сумму.
Ограничения: 0 <= M, N < 1030 000 (т. е. числа большие, чем longInt)
Ввод: В первой строке содержится M, во второй - N.
Вывод: Вывести сумму без пробелов.
Пример
Ввод
12345678901234567890123456789
1111111111111111111111111111
Вывод
13456790012345679001234567900
3) (3 балла) Отредактировать заданное предложение, удаляя из него все слова с нечетными номерами и переворачивая слова с четными номерами.
Пример:
Ввод
How do you do
Вывод
od od
4) (4 балла)
В последовательности цифр а1, а2, а3, … каждый член, начиная с четвёртого, равен последней цифре суммы трёх предыдущих.
Требуется написать программу, которая по заданным а1, а2, а3 определяет аn, где n <= 1000000000.
Формат входных данных:
Вначале задаются три цифры а1, а2, а3
Затем — одно число n.
Пример:
Ввод
2 3 61000000000Вывод
75) “Сдвиги” (5 баллов)
Дано целое десятичное число N (1 <= N <= 65535).
Некто записал это число в двоичном формате и стал циклически сдвигать влево, т. е. брать первую цифру числа и переносить ее в конец. Например, если N = 11, то в двоичном формате оно будет представлено как 1011. После первого сдвига получится 0111, после второго — 1110, после третьего — 1101, после четвертого — исходное число 1011. Легко видеть, что максимальное значение из всех полученных таким образом чисел будет иметь число 1110, и это значение в десятичной системе равно 14.
Требуется написать программу, которая для заданного числа N определяет максимальное значение среди чисел, которые могут получаться в результате вышеописанных сдвигов.
Пример:
Ввод
11
Вывод
14


