diff --git a/C/gcd.c b/C/gcd.c index b9554d4..9c082d1 100644 --- a/C/gcd.c +++ b/C/gcd.c @@ -29,4 +29,24 @@ int main(){ t--; } return 0; -} \ No newline at end of file +} + + +/* Different Approach */ +int gcd(int a, int b) +{ + // Everything divides 0 + if (a == 0) + return b; + if (b == 0) + return a; + + // base case + if (a == b) + return a; + + // a is greater + if (a > b) + return gcd(a-b, b); + return gcd(a, b-a); +}