@aritra90tnp The idea is simple. We can divide the each slot of result array to two parts: `left`

and `right`

.

For example:

the `left`

of `result[i]`

means the product of all elements with index less than `i`

or `1`

the `right`

of `result[i]`

means the product of all elements with index larger than `i`

or `1`

We use two loops to calculate `left`

and `right`

. Then we store the result in the `result`

array in the meanwhile.