---> 118 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 3 4 5 6 7 8 9 >> Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вася нарисовал на клетчатой бумаге многоугольник, все стороны которого проходят по линиям сетки. После этого в каждой клетке он написал число, равное количеству сторон данной клетки, которые принадлежат сторонам многоугольника. Затем он стер многоугольник так, что остался листок бумаги, в каждой клетке которого написано число.

Восстановите нарисованный Васей многоугольник.

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

В первой строке входных данных содержатся два натуральных числа: \(Y\) - количество строк и \(X\) - количество столбцов листа (3 <= \(Y\) <= 1000, 3 <= \(X\) <= 1000). В каждой из следующих \(Y\) строк задается по \(X\) целых неотрицательных чисел, не превосходящих 4. Ни одна из сторон многоугольника не проходит по границе листа бумаги.

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

Выведите искомый многоугольник в следующем формате.

Выходные данные должны содержать \(Y\) строк по 2\(X\)-1 символов в каждой (по одному символу на клетку и линию между клетками).

В первой строке выведите вертикальные отрезки в верхнем ряду клеток, обозначая их символом | (вертикальная черта - символ с кодом 124) и горизонтальные отрезки, отделяющие первый ряд клеток от следующего, обозначая их символом _ (подчеркивание). Если соответствующий отрезок в данном многоугольнике отсутствует, выведите вместо него символ . (точка). Во второй строке выведите в том же формате вертикальные отрезки во втором ряду и горизонтальные отрезки, отделяющие второй ряд от третьего. И т.д. В каждой строке на нечетных местах могут стоять только символы точка или подчеркивание, на четных местах - символы точка или вертикальная черта.

Гарантируется, что хотя бы одно решение существует. Если решений несколько, выведите любое из них.

Примеры
Входные данные
4 4
0 0 1 0
0 2 3 1
1 3 2 1
0 1 1 0
Выходные данные
...._..
.._|.|.
.|_._|.
.......
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вывести квадрат, состоящий из \(N\)x\(N\) клеток, заполненных числами от 1 до \(N^2\) по спирали (см. примеры).

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

В первой строке находится единственное число \(N\). 2 <= \(N\) <= 100.

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

Выводится \(N\) строк по \(N\) чисел, разделённых пробелами. Не допускается начинать спираль в ином, кроме верхнего левого, углу, закручивать спираль против часовой стрелки или изнутри наружу.

Примеры
Входные данные
2
Выходные данные
     1     2
     4     3
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вывести квадрат, состоящий из \(N\)x\(N\) ячеек, заполненных числами от 1 до \(N^2\) "змейкой" (см. примеры).

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

В первой строке находится единственное число \(N\). 2 <= \(N\) <= 100.

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

Выводится \(N\) строк по \(N\) чисел, разделённых пробелами. Не допускаются начало змейки в другом углу или другое её направление.


При n = 3 ответ 

     1     2     6
     3     5     7
     4     8     9

Примеры
Входные данные
2
Выходные данные
     1     2
     3     4
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Дана матрица A размером NxN, заполненная неотрицательными целыми числами. Расстояние между двумя элементами Ai j и Ap q определено как |i - p| + |j - q|.

Требуется заменить каждый нулевой элемент матрицы ближайшим ненулевым. Если есть две или больше ближайших ненулевых ячейки, нуль должен быть оставлен.

Ограничения: 1 <= N <= 200, 0 <= Ai j <= 1 000 000.

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

В первой строке содержится число N. Затем идут N строк по N чисел, разделённых пробелами и представляющих собой матрицу.

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

Выводится N строк по N чисел, разделённых пробелами, - модифицированная матрица.

Примеры
Входные данные
1
0
Выходные данные
0
Входные данные
3
5 0 0
0 0 0
0 0 6
Выходные данные
5 5 0
5 0 6
0 6 6
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Требуется расставить в некоторые клетки таблицы 3 x 3 крестики так, чтобы в каждой строке и в каждом столбце было заданное количество крестиков.

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

Вводятся 6 чисел (от 0 до 3) – требуемое количество крестиков в первом, втором, третьем столбце, в первой, второй, третьей строке.

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

Требуется выдать количество возможных таблиц или 0, если таких таблиц нет.

Примеры
Входные данные
1 1 1 1 1 1
Выходные данные
6
Входные данные
3 3 3 1 1 1
Выходные данные
0

Страница: << 3 4 5 6 7 8 9 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест