Cod sursa(job #109754)

Utilizator AlxCojocaru Alexandru Alx Data 25 noiembrie 2007 12:38:11
Problema Pairs Scor 20
Compilator cpp Status done
Runda preONI 2008, Runda 1, Clasele 11-12 Marime 0.61 kb
#include <stdio.h>
using namespace std;
long a[100000],rs[100000];
int main()
{
 freopen("pairs.in","r",stdin);
 freopen("pairs.out","w",stdout);
 long nr=0,n,i,j;
 scanf("%ld\n",&n);
 scanf("%ld\n",&a[0]);
 rs[0]=a[0];
 for (i=1;i<n;i++)
 {
  scanf("%ld\n",&a[i]);
  long x=a[i],y=a[0],r=x%y;
  while (r)
  {
   x=y;
   y=r;
   r=x%y;
  }
  rs[i]=y;
  if (y==1)
   nr++;
  for (j=1;j<i;j++)
   if (rs[i]!=rs[j]||rs[i]==1)
   {
    x=a[i];
    y=a[j];
    r=x%y;
    while (r)
    {
     x=y;
     y=r;
     r=x%y;
    }
    if (y==1)
     nr++;
  }
 }
 printf("%ld\n",nr);
 return 0;
}