Строки(121 задач)
Целые числа(112 задач)
Битовые операции(28 задач)
Логический тип(3 задач)
Структуры(18 задач)
Вещественные числа(33 задач)
Множества(16 задач)
Словари(21 задач)
Как известно, в шахматах горизонтальные строки обозначаются цифрами от 1 до 8, считая от расположения белых фигур, стоящих внизу доски, а вертикальные столбцы – буквами латинского алфавита: A, B, C, D, E, F, G, H.
На шахматной доске в клетке с заданными координатами находиться конь. Сначала делается первый ход конём, а затем – второй ход. Например, для клетки А1 после первого хода возможно перемещение коня на клетку С2 или В3, а после второго хода – на клетки А1, Е1, А3, Е3, В4, D4.
Требуется написать программу, которая определяет координаты всех клеток, куда можно прийти конём за два хода.
В единственной входной строке записано обозначение исходной позиции коня на шахматной доске.
В единственной строке должны быть записаны через пробел обозначения всех клеток, в которые может переместиться конь после второго хода. Клетки выводятся в следующем порядке: вначале клетки первого ряда слева – направо, далее клетки второго ряда и т.д.
A1
A1 C1 E1 D2 A3 E3 B4 D4 A5 C5
В конструкторском бюро проектируют планетоход для исследования поверхности планеты Марс. Исследования должны проводиться на прямоугольной области планеты без препятствий внутри неё. Эта область разделена на единичные квадраты и имеет размеры \(M \times N\), где \(M\) – высота прямоугольника, а \(N\) – его ширина.
Планируется, что планетоход должен работать по следующей программе. Вначале он садится в северо-западном углу заданной области в направлении на восток. После этого планетоход начинает обход и исследование выбранной области, двигаясь по спирали по часовой стрелке. При этом спираль постепенно «закручивается» вовнутрь, захватывая постепенно все клетки прямоугольника. Исследование заканчивается, когда пройдены все клетки (после очередного поворота планетохода).
Требуется написать программу, которая для заданных \(M\) и \(N\) (\(1 \le M, N \le 32767\)) определяет количество поворотов, которые должен выполнить планетоход в процессе исследования области.
В единственной входной строке через пробел записаны два целых числа \(M\) и \(N\) (\(1 \le M, N \le 32767\)), размеры исследуемого прямоугольного участка.
Программа должна вывести одно целое число – количество поворотов, которое выполнит планетоход при исследовании заданной области на поверхности Марса.
3 4
5
5 3
6
Числа в позиционной троично-симметричной системе счисления записываются с использованием трех символов: +, –, 0. Например, такими числами являются, например,
"+ + 0 – 0", "– – 0 +", "– – –".
Эти числа переводятся в десятичную систему как:
а) + + 0 – 0 = 1*\(3^4\) + 1*\(3^3\) + 0*\(3^2\) – 1*\(3^1\) + 0*\(3^0\)
б) – – 0 + = – 1*\(3^3\) – 1*\(3^2\) + 0*\(3^1\) + 1*\(3^0\)
в) – – – = – 1*\(3^2\) – 1*\(3^1\) – 1*\(3^0\)
Над числами в позиционной троично-симметричной системе счисления можно выполнять два действия: сложение (+) и вычитание (–). Требуется написать программу, которая вычисляет сумму или разность чисел в троично-симметричной системе счисления. Таблица Пифагора для сложения цифр в троично-симметричной системе счисления имеет вид:
В единственной строке записаны два числа в троично-симметричной системе счисления, между которыми в скобках записана требуемая операция. Разрядность чисел не превышает 15.
В единственной строке необходимо вывести полученный в результате заданной операции результат в троично-симметричной системе счисления.
+++0-(+)-0+
++000
Для привлечения денег в казну министр финансов Его Величества Бубея Второго решил проводить ежемесячную лотерею. Лотерейный билет представляет собой таблицу \(5 \times 5\) клеток. В каждой клетке записана одна буква (напомним, что в Королевстве используются только заглавные английские буквы). Билет считается выигрышным, если на нем можно прочесть сумму (записанную прописью). Начинать чтение можно с любой клетки, перемещаясь только через стороны клеток. Возвращаться в уже прочитанную клетку – нельзя. На рисунке показан выигрышный билет на 50 монет – fifty.
Однако закон требует, чтобы не менее определенного процента билетов были выигрышными. Чтобы это гарантировать, в типографии по выпуску билетов используется компьютер.
Напишите программу, определяющую можно ли в данной таблице прочесть заданное слово.
В первой строке файла input.txt записано слово, состоящее из заглавных английских букв, длина слова не превышает 25 символов. В следующих 5 строках записано по 5 заглавных английских букв.
В файл output.txt выведите слово YES, если такое слово можно прочесть в заданной таблице и NO – если нет.
В первом примере:
THOUSAND OBUWS HLOMO LUSAP AOHND ZVTNX
YES
MILLION OBUWS HLIMO LUSAP AOHND ZVTNX
NO
Преподаватель: ...- И впишем в сферу икосаэдр...
Студенты: - Чего, чего???
Преподаватель: - Специально для AD&D-шников -
и впишем в сферу D20...
Во многих ролевых играх применяется такой формат описания случайных чисел: \(XdY+Z\). Это означает, что для получения такого случайного числа необходимо подбросить \(X\) игральных костей, по \(Y\) граней на каждой и к результату прибавить фиксированное число \(Z\).
Пример: \(2d6+4\) означает что для получения случайного числа надо взять \(6\)-гранные игральные кости в количестве \(2\) штук и к результату броска прибавить \(4\).
Напишите программу, которая по заданной записи формата \(XdY+Z\) определяет минимальное и максимальное число, которое можно получить по такому правилу.
В файле input.txt записано число \(X\) (целое, положительное, не превышает 1000), затем без пробела следует символ ‘d’, за которым также без пробела записано число \(Y\) (целое, положительное, не превышает 1000), затем также без пробела следует один из знаков ‘+’ или ‘-’, после этого знака также без пробела указывается число \(Z\) (целое, неотрицательное, не превышает 1000).
В файл output.txt выведите два числа – минимальный и максимальный результат, который можно получить при описанном броске.
Комментарий к первому примеру: минимальное число, которое выпадает на 6-гранном кубике равно 1, прибавляя к нему 9 получим минимально возможный результат; максимальное число, которое может выпасть равно 6, прибавим к нему 9 и получим максимальный результат броска
1d6+9
10 15
1d20-10
-9 10