Given multiple numbers and a number n, the task is to print the remainder after multiply all the number divide by n.

**Examples:**

Input :arr[] = {100, 10, 5, 25, 35, 14}, n = 11Output :9 100 x 10 x 5 x 25 x 35 x 14 = 61250000 % 11 = 9

**Naive approach:** First multiple all the number then take % by n then find the remainder, But in this approach if number is maximum of 2^64 then it give wrong answer.

**Approach that avoids overflow : ** First take a remainder or individual number like arr[i] % n. Then multiply the remainder with current result. After multiplication, again take remainder to avoid overflow. This works because of distributive properties of modular arithmetic. ( a * b) % c = ( ( a % c ) * ( b % c ) ) % c

`# Python3 program to ` `# find remainder when ` `# all array elements ` `# are multiplied. ` ` ` `# Find remainder of arr[0] * arr[1] ` `# * .. * arr[n-1] ` `def` `findremainder(arr, lens, n): ` ` ` `mul ` `=` `1` ` ` ` ` `# find the individual ` ` ` `# remainder and ` ` ` `# multiple with mul. ` ` ` `for` `i ` `in` `range` `(lens): ` ` ` `mul ` `=` `(mul ` `*` `(arr[i] ` `%` `n)) ` `%` `n ` ` ` ` ` `return` `mul ` `%` `n ` ` ` `# Driven code ` `arr ` `=` `[ ` `100` `, ` `10` `, ` `5` `, ` `25` `, ` `35` `, ` `14` `] ` `lens ` `=` `len` `(arr) ` `n ` `=` `11` ` ` `# print the remainder ` `# of after multiple ` `# all the numbers ` `print` `( findremainder(arr, lens, n)) ` ` ` `# This code is contributed by "rishabh_jain". ` |

*chevron_right*

*filter_none*

**Output:**

9

Please refer complete article on Find remainder of array multiplication divided by n for more details!