Pagini recente » Cod sursa (job #981563) | Cod sursa (job #695785) | Cod sursa (job #270844) | Cod sursa (job #2188648) | Cod sursa (job #181456)
Cod sursa(job #181456)
#include<cstdio>
long long n,a[501],s[2][1001],i,j,prev,now,x;
inline int cmmdc(int a,int b)
{
int r;
while(a!=0)
{
r=b%a;
b=a;
a=r;
}
return b;
}
int main()
{
freopen("indep.in","r",stdin);
freopen("indep.out","w",stdout);
scanf("%lld",&n);
for(i=1;i<=n;i++)
scanf("%lld",&a[i]);
now=0;
s[now][a[1]]=1;
for(i=2;i<=n;i++)
{
prev=now;
now=!now;
for(j=1;j<=6;j++)
{
s[now][j]=s[prev][j];
x=cmmdc(a[i],j);
s[now][x]+=s[prev][j];
}
s[now][a[i]]++;
}
printf("%lld\n",s[now][1]);
fclose(stdout);
return 0;
}