- var_dump: documentation ( source)
- shuffle: documentation ( source)
- range: documentation ( source)
<?php
final class ArrayUtils
{
public static function containsSum(array $data, int $sum): bool
{
$max = count($data);
for ($i = 0; $i < $max; $i += 1) {
$v1 = $data[$i];
for ($j = $i + 1; $j < $max; $j += 1) {
$v2 = $data[$j];
if ($v1 + $v2 === $sum) {
return true;
}
}
}
return false;
}
}
$data = range(0, 4999);
shuffle($data);
var_dump(ArrayUtils::containsSum($data, 1220));
var_dump(ArrayUtils::containsSum($data, -7));