Problem:
Greatest Common Divisor

Write a program which finds the greatest common divisor of two natural numbers a and b

Input

a and b are given in a line sparated by a single space.

Output

Output the greatest common divisor of a and b.

Constrants

1 ≤ a, b ≤ 109

Hint

You can use the following observation:

For integers x and y, if x ≥ y, then gcd(x, y) = gcd(y, x%y)

Sample Input 1

54 20

Sample Output 1

2

Sample Input 2

147 105

Sample Output 2

21

Solution in C (judge verdict: Time Limit Exceeded)

#include <stdio.h>

int mygcd(int a,int b);

int main () {
    int a,b;
    int gcd_main;
    scanf ("%d %d",&a,&b); //two natural numbers
    gcd_main = mygcd(a,b);
    
    printf ("%d\n",gcd_main);
    
    return 0;
}
    
int mygcd(int a,int b) {
    int d,i,ans;
    if (a >= b) {
        d = b;
    } else {
        d = a;
    }
    for (i = 1;i <= d;i ++) {  //i=0 error
        if (a % i == 0 && b % i == 0) {
            ans = i;
        }
    }
    return ans;
}