Pagini recente » Cod sursa (job #1914702) | Cod sursa (job #400881) | Cod sursa (job #1434962) | Cod sursa (job #2678630) | Cod sursa (job #546271)
Cod sursa(job #546271)
#include<stdio.h>
const int N=1001;
long long n,v[501],a[N][N],d;
int cmmdc(int a,int b)
{
int r;
while (b!=0)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
long long i,j;
freopen("indep.in","r",stdin);
freopen("indep.out","w",stdout);
scanf("%lld",&n);
for(i=1;i<=n;++i)
scanf("%lld",&v[i]);
a[1][0]=a[1][v[1]]=1;
for(i=2;i<=n;++i)
{
for(j=0;j<N;j++)
{
d=cmmdc(v[i],j);
a[i][d]+=a[i-1][j];
}
for(j=0;j<N;j++)
a[i][j]+=a[i-1][j];
}
printf("%lld",a[n][1]);
}