How to find if there is a pair in sorted array with sum equal to a given sum in PHP

1 Answer

0 votes
function isPairWithAGivenSum($arr, $sum) {
    $size = count($arr);
    
    for ($i = 0; $i < $size; $i++) {
        for ($j = 0; $j < $size; $j++) {
            if ($i == $j) {
                continue;
            }
            if ($arr[$i] + $arr[$j] == $sum) {
                echo "i = " . strval($i) . " j = " . strval($j),"\n";
                return true;
            }
            if ($arr[$i] + $arr[$j] > $sum) {
                break;
            }
        }
    }
    return false;
}

$arr = array(3, 5, 6, 8, 9, 12, 13, 15);
$sum = 17;

echo isPairWithAGivenSum($arr, $sum) ? "true" : "false";





/*
run:

i = 1 j = 5
true

*/

 



answered Apr 22, 2023 by avibootz
...