Назовем два массива похожими, если они состоят из одних и тех же элементов (без учета кратности). По двум данным массивам выясните, похожие они или нет.
В первой строке содержится число N (1 ≤ N ≤ 100000) – размер первого массива. Во второй строке идет N целых чисел, не превосходящих по модулю 109 – элементы массива. Далее аналогично задается второй массив.
Программа должна вывести слово YES, если массивы похожи, и слово NO в противном случае.
3 1 7 9 4 9 7 7 1
YES
Требуется расставить в некоторые клетки таблицы 3 x 3 крестики так, чтобы в каждой строке и в каждом столбце было заданное количество крестиков.
Вводятся 6 чисел (от 0 до 3) – требуемое количество крестиков в первом, втором, третьем столбце, в первой, второй, третьей строке.
Требуется выдать количество возможных таблиц или 0, если таких таблиц нет.
1 1 1 1 1 1
6
3 3 3 1 1 1
0
Будильник в сотовом телефоне можно настроить так, чтобы он звонил каждый день в одно и то же время, либо в указанное время в определенный день недели. Независимо можно настроить несколько будильников.
По информации о будильниках и текущему времени и дню недели определите, когда прозвонит очередной будильник.
В первой строке вводятся три числа, задающие текущее время: день недели (от 1 до 7), часы и минуты.
Во второй строке вводится одно натуральное число N, не превосходящее 100 – количество будильников.
В следующих N строках вводятся описания N будильников. Описание каждого будильника состоит из трех чисел: дня недели (число от 1 до 7 для понедельника, …, воскресенья, соответственно, 0 – если будильник должен звонить каждый день), часов (от 0 до 23), минут (от 0 до 59).
Выведите через пробел три числа, задающие день недели, часы и минуты, когда прозвонит ближайший будильник.
Комментарий. Во втором примере третий будильник будет звенеть в начальный момент времени.2 10 20 2 1 23 15 0 10 10
3 10 10
7 1 1 3 7 0 59 7 23 59 7 1 1
7 1 1
Дана картинка. Требуется повернуть ее на 90 градусов по часовой стрелке вокруг центра.
Картинка представляет собой квадрат, разбитый на N x N маленьких квадратиков. Каждый маленький квадратик закрашен в свой цвет. Цвета имеют номера от 0 до 255.
В первой строке вводится число одно натуральное число N, не превосходящее 100.
В следующих N строках записано по N чисел – цвета соответствующих квадратиков.
Выведите N строк по N чисел, разделенных пробелами – цвета квадратиков после поворота картинки.
3 1 2 3 4 5 6 1 2 3
1 4 1 2 5 2 3 6 3
2 10 100 1 2
1 10 2 100
Прямоугольную таблицу, состоящую из N строк и M столбцов, раскрашивают следующим образом. Каждый столбец таблицы и каждую строку красят либо в синий, либо в желтый цвет. В итоге клетки, оказавшиеся на пересечении синего столбца и синей строки оказываются синими, желтого столбца и желтой строки — желтыми, а клетки на пересечении синего столбца и желтой строки, или, наоборот, желтого столбца и синей строки — зелеными.
Раскраска всех клеток таблицы (или просто сама таблица) называется правильной, если она может быть получена описанным выше способом.
Вам дана прямоугольная таблица, которую нужно раскрасить таким образом. Про некоторые клетки известно, какого цвета они должны быть, а остальные клетки могут в итоге быть любого цвета. Определите, как нужно раскрасить остальные клетки таблицы, чтобы раскраска была правильной.
Вводятся числа N и M — количество строк и столбцов таблицы (1≤N≤30, 1≤M≤30). Далее записано N строк по M чисел в каждой, задающие цвета, в которые должны быть окрашены клетки:
0 — клетка может в итоге быть любого цвета
1 — клетка должна быть синей
2 — клетка должна быть желтой
3 — клетка должна быть зеленой
Выведите N строк по M чисел в каждой — раскраску таблицы, которая является правильной, и в которой нужные клетки имеют нужный цвет. Если вариантов несколько, выведите любой из них. Если покрасить таким образом таблицу невозможно, выведите одно число 0.
Примеры
Входные данные | Выходные данные |
3 4 1 0 0 0 3 0 0 0 0 0 0 0 | 1 1 1 1 3 3 3 3 1 1 1 1 |
2 2 3 3 3 3 | 3 3 3 3 |
2 2 2 2 2 3 | 0 |