Showing:
Handle Score
@Ibrahim Nash 6564
@mb1973 5785
@Quandray 5275
@akhayrutdinov 5111
@saiujwal13083 5074
@kirtidee18 4639
@sanjay05 3762
@mantu_singh 3712
@gfgaccount 3627
@marius_valentin_dragoi 3525
Image Multiplication
Medium Accuracy: 42.4% Submissions: 1868 Points: 4

You are given a binary tree. Your task is pretty straightforward. You have to find the sum of the product of each node and its mirror image (The mirror of a node is a node which exists at the mirror position of the node in opposite subtree at the root.). Don’t take into account a pair more than once. The root node is the mirror image of itself.

Example 1:

Input:
4
/    \
5      6
Output:
46
Explanation:
Sum = (4*4) + (5*6) = 46

Example 2:

Input:
1
/        \
3            2
/  \         /  \
7     6       5    4
/   \    \     /  \    \
11    10    15  9    8    12
Output:
332
Explanation:
Sum = (1*1) + (3*2) + (7*4) + (6*5) + (11*12) + (15*9) = 332

You need to complete the function imgMultiply() that takes root as parameter and returns the required sum.The answer may be very large, compute the answer modulo 109 + 7.

Expected Time Complexity: O(Number of nodes).
Expected Auxiliary Space: O(Height of the Tree).

Constraints:

1 <= Number of nodes <= 105
1 <= Data of a node <= 105