Cod sursa(job #34827)
| Utilizator | Data | 21 martie 2007 15:01:56 | |
|---|---|---|---|
| Problema | Indep | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.43 kb |
#include<stdio.h>
int d,nr,i,j,n,s[500];
int long k;
int cmmdc(int a,int b)
{return !b?a:cmmdc(b,a%b);}
int main()
{freopen("indep.in","r",stdin);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&s[i]);
for(i=1;i<=n;i++)
{nr=i-1;
for(j=i+1;j<=n;j++)
{d=cmmdc(s[i],s[j]);
if(d==1)
{k+=1<<n-2-nr;
nr++;
}
}
}
freopen("indep.out","w",stdout);
printf("%ld",k);
fclose(stdout);
return 0;
}
