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: Accepted)

#include <stdio.h>

int		main(void)
{
	int		x, y;
	int		a, b;
	//long		tmp;
	int		rmd;
	int		i;
	int		rst;

	scanf("%d %d",&a, &b);
	if( a >= b )
	{
		x = a;
		y = b;
	}else
	{
		x = b;
		y = a;
	}

	rmd = x % y;
	if( rmd == 0 )
	{
		printf("%d\n",y);
	}
	else
	{
		//printf("rmd=%ld\n",rmd);
		for(i=1; i<=rmd; i++)
		{
			if((( y % i) == 0) && (( rmd % i) == 0))
			{
				rst = i;
			}
		}
		printf("%d\n",rst);
	}
	return 0;
}