HackerRank Coding Question for Placements 8
Multiply two integers without using multiplication, division and bitwise operators, and no loops
By making use of recursion, we can multiply two integers with the given constraints.
To multiply x and y, recursively add x y times.
#include<stdio.h> /* function to multiply two numbers x and y*/ int multiply( int x, int y) { /* 0 multiplied with anything gives 0 */ if (y == 0) return 0; /* Add x one by one */ if (y > 0 ) return (x + multiply(x, y-1)); /* the case where y is negative */ if (y < 0 ) return -multiply(x, -y); } int main() { printf ( "\n %d" , multiply(5, -11)); getchar (); return 0; } |
Time Complexity: O(y) where y is the second argument to function multiply().
Login/Signup to comment