PHP Program for Products of ranges in an array
Last Updated :
22 Jul, 2024
Improve
Given an array A[] of size N. Solve Q queries. Find the product in the range [L, R] under modulo P ( P is Prime).
Examples:
Input : A[] = {1, 2, 3, 4, 5, 6}
L = 2, R = 5, P = 229
Output : 120
Input : A[] = {1, 2, 3, 4, 5, 6},
L = 2, R = 5, P = 113
Output : 7
Brute Force Approach
For each of the queries, traverse each element in the range [L, R] and calculate the product under modulo P. This will answer each query in O(N).
<?php
// Product in range Queries in O(N)
// Function to calculate
// Product in the given range.
function calculateProduct($A, $L,
$R, $P)
{
// As our array is 0 based as
// and L and R are given as 1
// based index.
$L = $L - 1;
$R = $R - 1;
$ans = 1;
for ($i = $L; $i <= $R; $i++)
{
$ans = $ans * $A[$i];
$ans = $ans % $P;
}
return $ans;
}
// Driver code
$A = array( 1, 2, 3, 4, 5, 6 );
$P = 229;
$L = 2; $R = 5;
echo calculateProduct($A, $L, $R, $P),"
" ;
$L = 1; $R = 3;
echo calculateProduct($A, $L, $R, $P),"
" ;
// This code is contributed by ajit.
?>
Output
120 6
Please refer complete article on Products of ranges in an array for more details!