Given a number N, the task is to check whether the given number is Armstrong number or not. If the given number is Armstrong Number then print “Yes” else print “No”.
A positive integer of D digits is called an armstrong-numbers of order D (order is the number of digits) if
Where D is number of digit in number N
and N(1), N(2), N(3)… are digit of number N.
Input: N = 153
153 is an Armstrong number.
1*1*1 + 5*5*5 + 3*3*3 = 153
120 is not an Armstrong number.
1*1*1 + 2*2*2 + 0*0*0 = 9
Approach: The idea is to count the number of digits(say d) in the given number N. For every digit(say r) in the given number N find the value of rd and if the summation of all the values is N then print “Yes” else print “No”.
Below is the implementation of the above approach:
Time Complexity: O(log10N)
Auxiliary Space: O(1)
Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.