Занимательные задачи PHP. Часть 23
Дана строка:
<?php
$txt = '3apple5banana2cherry7date1fig';
?>
Преобразуйте ее в ассоциативный массив, где ключами будут цифры, а значениями - следующие за ними слова.
Дан массив чисел:
<?php
$arr = [23, 15, 9, 4, 7, 12, 19, 31, 28, 16, 8, 3];
?>
Разделите его на две части с одинаковой суммой элементов. Если это невозможно - выведите сообщение об этом.
Дана строка:
<?php
$txt = 'abacabadabacabae';
?>
Найдите в ней самую длинную повторяющуюся подстроку (она должна встречаться в строке минимум дважды).
Дан массив чисел:
<?php
$arr = [5, 3, 8, 1, 9, 2, 7, 4, 6, 11, 13, 10];
?>
Найдите в нем все пары чисел, сумма которых является простым числом. Выведите пары в порядке возрастания первого элемента.
Дана строка:
<?php
$txt = 'kayak deed racecar level rotor civic';
?>
Найдите в ней все слова, которые являются палиндромами, и выведите их в порядке убывания длины. При равенстве - в алфавитном порядке.
Дан массив чисел:
<?php
$arr = [3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25];
?>
Найдите в нем все числа, которые можно представить в виде суммы двух простых чисел из этого же массива.
Дан текст:
<?php
$text = 'The quick brown fox jumps over the lazy dog';
?>
Найдите в тексте самое длинное слово, которое начинается на ту же букву, что и предыдущее слово. Учитывайте регистр.
Дан двухмерный массив с координатами:
<?php
$points = [[1, 2], [3, 5], [4, 1], [7, 3], [2, 8], [6, 4]];
?>
Найдите две точки, расстояние между которыми максимально. Выведите их и это расстояние, округленное до двух знаков.
Дана строка:
<?php
$txt = 'aabcccdeeeef';
?>
Выполните над ней RLE-сжатие, заменив каждую группу одинаковых символов на символ и количество его повторов. Если символ встречается один раз - не добавляйте к нему цифру:
'a2bc3de4f'
Дан массив чисел:
<?php
$arr = [7, 1, 5, 3, 6, 4, 9, 2, 8, 10];
?>
Найдите максимальную разницу между двумя элементами, где меньший элемент стоит раньше большего. Выведите оба элемента и их разницу.