Check if two numbers have same number of digits
Given two integers A and B, the task is to check whether both the numbers have an equal number of digits.
Examples:
Input: A = 12, B = 1
Output: No
Input: A = 20, B = 99
Output: Yes
Approach: While both the numbers are > 0, keep dividing both the numbers by 10. Finally, check if both the numbers are 0. If any one of them is not 0 then they had an unequal numbers of digits.
Below is the implementation of the above approach:
C++
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // Function that return true if A and B // have same number of digits bool sameLength( int A, int B) { while (A > 0 && B > 0) { A = A / 10; B = B / 10; } // Both must be 0 now if // they had same lengths if (A == 0 && B == 0) return true ; return false ; } // Driver code int main() { int A = 21, B = 1; if (sameLength(A, B)) cout << "Yes" ; else cout << "No" ; return 0; } |
Java
// Java implementation of the approach import java.io.*; class GFG { // Function that return true if A and B // have same number of digits static boolean sameLength( int A, int B) { while ((A > 0 ) && (B > 0 )) { A = A / 10 ; B = B / 10 ; } // Both must be 0 now if // they had same lengths if ((A == 0 )&& (B == 0 )) return true ; return false ; } // Driver code public static void main (String[] args) { int A = 21 , B = 1 ; if (sameLength(A, B)) System.out.println ( "Yes" ); else System.out.println( "No" ); } } // This code is contributed by @tushil. |
Python3
# Python implementation of the approach # Function that return true if A and B # have same number of digits def sameLength(A, B): while (A > 0 and B > 0 ): A = A / 10 ; B = B / 10 ; # Both must be 0 now if # they had same lengths if (A = = 0 and B = = 0 ): return True ; return False ; # Driver code A = 21 ; B = 1 ; if (sameLength(A, B)): print ( "Yes" ); else : print ( "No" ); # This code contributed by PrinciRaj1992 |
C#
// C# implementation of the approach using System; class GFG { // Function that return true if A and B // have same number of digits static bool sameLength( int A, int B) { while ((A > 0) && (B > 0)) { A = A / 10; B = B / 10; } // Both must be 0 now if // they had same lengths if ((A == 0 )&& (B == 0)) return true ; return false ; } // Driver code static public void Main () { int A = 21, B = 1; if (sameLength(A, B)) Console.WriteLine( "Yes" ); else Console.WriteLine( "No" ); } } // This code is contributed by ajit.. |
Javascript
<script> // Javascript implementation of the approach // Function that return true if A and B // have same number of digits function sameLength(A, B) { while (A > 0 && B > 0) { A = parseInt(A / 10); B = parseInt(B / 10); } // Both must be 0 now if // they had same lengths if (A == 0 && B == 0) return true ; return false ; } // Driver code let A = 21, B = 1; if (sameLength(A, B)) document.write( "Yes" ); else document.write( "No" ); </script> |
Output:
No
Time Complexity: O(log10(min(A, B)))
Auxiliary Space: O(1)
Contact Us