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