Cod sursa(job #109537)
Utilizator | Victor-Nicolae Savu Viksen | Data | 25 noiembrie 2007 11:38:55 |
---|---|---|---|
Problema | Pairs | Scor | 20 |
Compilator | cpp | Status | done |
Runda | preONI 2008, Runda 1, Clasele 11-12 | Marime | 0.55 kb |
#include <stdio.h>
int A[100000];
int main ()
{
int n,i,j,s=0,x,y;
freopen ( "pairs.in" , "r" , stdin );
scanf ( "%d" , &n );
for ( i=0 ; i<n ; i++ )
scanf ( "%d" , &A[i] );
fclose ( stdin );
for ( i=0 ; i<n ; i++ )
for ( j=i+1 ; j<n ; j++ ) {
for ( x=A[i],y=A[j] ; x && y ; )
if (x>y) x%=y; else y%=x;
if (x) s+=(x==1); else s+=(y==1);
}
freopen ( "pairs.out" , "w" , stdout );
printf ( "%d\n" , s );
fclose ( stdout );
return 0;
}