Массивы(232 задач)
Типы данных(356 задач)
Циклы(177 задач)
Условный оператор (if)(164 задач)
Python(260 задач)
Standard Template Library(2 задач)
Вывести квадрат, состоящий из \(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
Два различных натуральных числа называются дружественными, если первое из них равно сумме делителей второго числа, за исключением самого второго числа, а второе равно сумме делителей первого числа, за исключением самого первого числа. Требуется найти все пары дружественных чисел, оба из которых принадлежат промежутку от \(M\) до \(N\).
В первой строке находятся числа \(M\) и \(N\). 1 <= \(M\) <= \(N\) <= 1 000 000, все числа целые.
В каждой строке вывести по паре чисел через пробел. Первое число пары должно быть меньше второго. Строки должны быть отсортированы в порядке возрастания первого числа пары. Если пар дружественных чисел в промежутке нет, вывести "Absent".
200 300
220 284
221 284
Absent
Заданы день и месяц рождения, а также текущие день, месяц и год. Определить, сколько дней осталось до дня рождения.
Примечание. Високосные годы - это те, номер которых делится на 400, а также те, номер которых делится на 4, но не делится на 100.
В первой строке находятся разделённые пробелами день и месяц рождения, во второй - разделённые пробелами текущие день, месяц и год. Год - от 1920 до 3000, месяц - от 1 до 12, день - от 1 до числа дней в месяце.
Вывести число дней, оставшихся до дня рождения.
31 12 01 01 1999
364
Игра для двух игроков определяется её деревом. Соперники делают ходы по очереди. Первый игрок начинает игру. Игра кончается или вничью, или победой одного из игроков. Листья дерева этой игры могут иметь значения, равные одному из трёх чисел: +1 - победа первого игрока, -1 - победа второго игрока, 0 - ничья. Ваша задача - определить, кто выиграет, если оба противника следуют правильной стратегии.
Узлы дерева пронумерованы последовательными целыми числами. Корень дерева всегда имеет номер 1. Первая строка входного файла содержит целое \(N\) - число узлов в дереве игры. Следующая \(N\) - 1 строка описывает узлы - одна строка для каждого узла (за исключением первого). Вторая строка содержит описание второго узла дерева, третья - третьего узла и т.д. Если узел является листом, первый символ строки - \(L\), затем идёт пробел, затем номер родительского узла, ещё пробел и результат игры (+1 - победа первого игрока, -1 - победа второго, 0 - ничья). Если узел внутренний, то строка содержит N - первый символ, затем пробел и номер родительского узла. 2 <= \(N\) <= 1000.
Выводится +1, если выигрывает первый игрок, -1, если второй, и 0 - в случае ничейного исхода.
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 +1
+1
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 0
0
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 -1
-1
Дана матрица 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