Right most non zero digit

Right most non zero digit
Easy Accuracy: 39.12% Submissions: 8042 Points: 2

You will be given an array A of N non-negative integers. Your task is to find the rightmost non-zero digit in the product of array elements.


Example 1:

Input:
N = 4, A = {3, 23, 30, 45}
Output:
5
Explanation:
Product of these numbers 
are 93150.Rightmost 
non-zero digit is 5.

Example 2:

Input:
N = 5, A = {1, 2, 3, 4, 5}
Output:
2
Explanation:
Product of these numbers 
are 120. Rightmost 
non-zero digit is 2.


Your Task:

You don't need to read input or print anything. Your task is to complete the function rightmostNonZeroDigit() which takes an array A and returns the rightmost non-zero digit in the product of array elements, if there is no right most non zero digit, then return -1.


Expected Time Complexity: O(N*logN)
Expected Auxiliary Space: O(N)


Constraints:
1 ≤ N ≤ 105
0 ≤ A[i] ≤ 105 

Topic Tags 
 
 
 
 
---------------------------------------------------------------------------------------------
 
 

class Solution:
    def rightmostNonZeroDigit (self, N, A):
        f=1
        for i in range(N):
            f=f*A[i]
        if (f>0):
            s=str(f)[::-1]
            l=len(s)
            for i in s:
                if (int(i)!=0):
                    return int(i)
                    break
        return -1
 

Comments

Popular posts from this blog

Large Factorial of array

Value equal to index value

Largest Element in Array