@Ankur: then what is the 'best' solution for this? :)
@Balaji: i tried implementing but I dont know which case it fails?? getting
WA now!!
Here is the code:

#include<stdio.h>

int main()
{
 long n,gcd=1;
 scanf("%d",&n);
 long long a[n],b[n],cnt=0,sum=0;
 long long min=999999999;
 scanf("%lld",&a[0]);

 for(long i=1;i<n;i++)
  {
         scanf("%lld",&a[i]);
         b[i-1]=a[i]-a[0];
         if(min>b[i-1])
         min=b[i-1];
  }


for(int k=min;k>0;k--)
{
        cnt=0;
        for(int i=0;i<n-1;i++)
        {
            if(b[i]%k==0)
            cnt++;
        }

        if(cnt==n-1)
        {
            gcd=k;
            break;
        }
}

sum=((a[n-1]-a[0])/gcd)-n+1;
printf("%lld\n",sum);
return 0;
}

On Sat, Mar 12, 2011 at 2:38 PM, Satyam Kapoor <satyamkapoo...@gmail.com>wrote:

>
> this is gud but not the best soln.
>
> --
> Satyam Kapoor
> B.Tech 2nd year
> Computer Science And Engineering
> M.N.N.I.T ALLAHABAD
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algogeeks@googlegroups.com.
> To unsubscribe from this group, send email to
> algogeeks+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to