Friday, February 18, 2011

10407 - Simple division


#include<iostream>
#include<algorithm>
#define M 1000
using namespace std;

int GCD(int,int);

int main()
{
    int num[M],i=0,k,g;
    //freopen("in.txt","r",stdin);
    while(scanf("%d",&num[0])&&num[0])
    {
        while(scanf("%d",&num[++i])&&num[i]);

        sort(num,num+i);

        g=num[1]-num[0];
       
        for(k=2;k<i;k++)
            g=GCD(g,num[k]-num[0]);
        printf("%d\n",g);
        i=0;
    }
    return 0;
}

int GCD(int a,int b)
{
    int c;
    while(a)
    {
        c=a;
        a=b%a;
        b=c;
    }
    return c;
}

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.