Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,872 questions

51,796 answers

573 users

How to find the subarray whose sum is equal to a given number N in PHP

1 Answer

0 votes
 function PrintSubarrayWithSumEqualToN($arr, $N) {
    $size = count($arr);
    
    for ($i = 0; $i < $size; $i++) {
        $current_sum = $arr[$i];
        if ($current_sum == $N) {
            echo "Sum found at index: " . strval($i);
            return;
        }
        else {
                for ($j = $i + 1; $j < $size; $j++) {
                    $current_sum += $arr[$j];
                    if ($current_sum == $N) {
                        echo "Sum found between index " . strval($i) . " and " . strval($j),"\n";
                        for ($k = $i; $k <= $j; $k++) {
                            echo strval($arr[$k]) . " ";
                        }
                        return;
                    }
                    else if ($current_sum > $N) {
                        break;
                    }
                }
            }
        }
        echo "No subarray found";
    }

$arr = array(2, 5, 8, 9, 1, 7, 12, 21, 19);
$N = 52;

PrintSubarrayWithSumEqualToN($arr, $N);




/*
run:

Sum found between index 6 and 8
12 21 19 

*/

 



answered Sep 26, 2022 by avibootz
...