Pagini recente » Cod sursa (job #733587) | Cod sursa (job #3253195) | Utilizatori inregistrati la preONI 2008, Runda 1, Clasa a 10-a | Cod sursa (job #3189859) | Cod sursa (job #546272)
Cod sursa(job #546272)
#include<stdio.h>
int cmmdc(int a,int b)
{
int r;
while(b)
{
r=a%b;
a=b;
b=r;
}
return b;
}
long long a[501][501];
int i,n,d,j,v[501];
int main()
{
freopen("indep.in","r",stdin);
freopen("indep.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&v[i]);
}
a[1][0]=a[1][v[1]]=1;
for(i=2;i<=n;i++)
{
for(j=0;j<=1001;j++)
{
d=cmmdc(v[i],j);
a[i][d]+=a[i-1][j];
}
for(j=0;j<=1001;j++)
a[i][j]+=a[i-1][j];
}
printf("%lld",a[n][1]);
return 0;
}