---> 118 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 18 19 20 21 22 23 24 Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

В игре «Гекс» используется доска в виде ромба, размера \(N\) строк по \(N\) шестиугольников (\(N\) целое, положительное, не более 20). На рисунке показано поле при \(N=5\). В игре принимают участие двое: первый игрок ходит белыми, второй – черными. За один ход можно поставить одну фишку в любой незанятый шестиугольник. Цель «белых» - соединить верхнюю и нижнюю сторону доски путем из белых фишек (двигаться можно только через сторону шестиугольника). Цель «черных» – соединить правую и левую стороны доски путем из черных фишек. Напишите программу, которая по заданной позиции определяет победили в ней белые или нет.

Входные данные

В первой строке файла input.txt записано число \(N\). В следующих \(N\) строках записано по одной строке, длиной \(N\) символов каждая. Символ ‘W’ (white) означает, что соответствующая клетка занята белой фишкой, символ ‘B’ (black) – черной, символ ‘E’ (empty) – клетка пуста.

Выходные данные

В файл output.txt вывести слово YES, если белые выиграли (существует путь, соединяющий верхнюю и нижнюю строки) и слово NO в противном случае.

Пояснения к примерам

Комментарий ко второму примеру:

Комментарий к третьему примеру:

Примеры
Входные данные
2
EE
WW
Выходные данные
NO
Входные данные
4
EWEE
EWEE
EWEE
BWBB
Выходные данные
YES
Входные данные
4
EEWW
BWBE
WBEB
EEEE
Выходные данные
NO
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Для привлечения денег в казну министр финансов Его Величества Бубея Второго решил проводить ежемесячную лотерею. Лотерейный билет представляет собой таблицу \(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
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
256 megabytes

Некоторый алгоритм шифрования устроен следующим образом.

Исходная строка разбивается на блоки по 36 символов. Если в конце остается часть, которой недостаточно для полного блока, то она не шифруется.

Шифрование происходит с помощью квадратного трафарета, в котором имеется 9 прорезей для записи символов.

Пример трафарета показан на рисунке.

Каждый блок шифруется в 4 этапа. На первом этапе первые 9 символов записываются в клетки с прорезями с порядке слева направо и сверху вниз.

Например, если в начале блока шло слово «Криптография», то его символы будут расположены вот так:

После этого трафарет поворачивается на месте, на 90 градусов по часовой стрелке и операция повторяется для следующих 9 символов. Затем снова следует поворот, и так далее. В результате шифрования получается таблица \(6 \times 6\) клеток.

Символы из таблицы выписываются в порядке слева направо и сверху вниз - таким образом получается зашифрованный блок.

Затем трафарет возвращается в исходное положение и операция повторяется для остальных блоков.

Гарантируется, что трафарет корректен (то есть в процессе шифрования одного блока над каждой клеткой таблицы прорезь появляется ровно один раз).

Дана строка, состоящая из английских букв (заглавных и строчных) и пробелов. Также дан трафарет. Напишите программу шифрования данной строки по трафарету.

Входные данные

В первой строке находится исходный текст (одна непустая строка длинной не более 200 символов).

В следующих 6 строках описан трафарет в следующем формате: закрытая клетка обозначается символом ‘#’ (решетка), прорезь обозначается символом ‘.’ (точка).

Например, трафарет из условия задачи будет вводиться так:

.#####
#..###
###.##
.###.#
######
#..#.#

Выходные данные

Выведите строку, полученную в результате шифрования исходного текста.

Примеры
Входные данные
ABCDE
.#####
#..###
###.##
.###.#
#####
#..#.#
Выходные данные
ABCDE

Страница: << 18 19 20 21 22 23 24 Отображать по:
Выбрано
:
Отменить
|
Добавить в контест