Занимательные задачи PHP. Часть 48
Дан многомерный массив:
<?php
$arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
?>
Найдите все возможные пути от левого верхнего угла до правого нижнего, двигаясь только вправо, вниз или по диагонали вправо-вниз. Выведите количество таких путей.
Дан файл с текстом. Найдите в нем все слова, которые начинаются с заглавной буквы и заканчиваются на гласную, и запишите их в новый файл в порядке появления.
Дана папка с файлами и подпапками. Найдите все файлы, которые имеют одинаковое содержимое, и выведите их пути, сгруппированные по группам.
Дан многомерный массив:
<?php
$arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
?>
Найдите сумму элементов на главной диагонали, на побочной диагонали и разницу между ними.
Дан файл с текстом. Найдите в нем все строки, которые содержат хотя бы одно слово из заданного массива, и запишите их в новый файл.
Дан массив чисел:
<?php
$arr = [1, 2, 3, 4, 5, 6];
?>
Найдите все возможные
способы расставить между
этими числами знаки
'+' и '-' так, чтобы
получилось выражение,
равное 1.
Дана папка с файлами. Найдите
все файлы, которые
содержат в себе
строку, начинающуюся
с '#' (комментарии),
и выведите их пути
и количество таких строк.
Дан многомерный ассоциативный массив:
<?php
$arr = [
'a' => ['b' => ['c' => 1, 'd' => 2]],
'e' => ['f' => 3],
'g' => 4,
];
?>
Найдите все значения, которые
являются числами больше 1,
и выведите пути к ним
в виде строк, разделенных
точками.
Дан файл с текстом. Найдите в нем все слова, которые содержат ровно одну цифру, и запишите их в новый файл в порядке появления.
Дан массив чисел:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
?>
Найдите все возможные
подмассивы этого массива,
сумма элементов которых
равна 15, и выведите
их в порядке возрастания
количества элементов.