Занимательные задачи PHP. Часть 40
Дано целое число:
<?php
$num = 1234567890;
?>
Найдите все возможные
способы расставить между
цифрами этого числа знаки
'+' и '-' так, чтобы
получилось выражение, равное 100.
Дан файл с текстом, в котором
встречаются вложенные скобки
разных типов: '()', '[]', '{}'.
Проверьте, что все скобки
расставлены правильно (каждая
открывающая имеет соответствующую
закрывающую на нужном уровне
вложенности).
Дан многомерный массив:
<?php
$arr = [1, [2, [3, [4]]], 5, [6, [7, [8, [9]]]]];
?>
Найдите максимальную глубину вложенности этого массива.
Дана папка с файлами. Найдите
все файлы, размер которых
превышает 1 МБ, обойдя
все подпапки, и выведите
их пути и размеры.
Дана строка:
<?php
$txt = 'a(b(c)d)e(f(g(h)i)j)k';
?>
Найдите максимальную глубину вложенности скобок в этой строке.
Дана папка с файлами и подпапками. Найдите общий размер всех файлов в этой папке, включая все уровни вложенности.
Дан многомерный ассоциативный массив произвольной вложенности:
<?php
$arr = [
'a' => 1,
'b' => ['c' => 2, 'd' => ['e' => 3, 'f' => 4]],
'g' => ['h' => ['i' => ['j' => 5]]],
];
?>
Найдите сумму всех чисел в этом ассоциативном массиве на всех уровнях вложенности.
Дан массив чисел:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8];
?>
Найдите все возможные способы разбить этот массив на пары так, чтобы сумма чисел в каждой паре была одинаковой.
Дан файл с текстом. Найдите в нем все слова, которые являются палиндромами, и запишите их в новый файл, каждое слово на своей строке.
Дан многомерный массив:
<?php
$arr = [[1, 2], [3, [4, 5]], [6, [7, [8, 9]]]];
?>
Найдите сумму чисел на каждом уровне вложенности отдельно. Выведите массив сумм по уровням.