Pagini recente » Cod sursa (job #1900876) | Cod sursa (job #656843) | Cod sursa (job #56906) | Cod sursa (job #2244129) | Cod sursa (job #402542)
Cod sursa(job #402542)
#include<stdio.h>
int d[501][1001];
int n,v[501],maxim;
int cmmdc(int a,int b)
{
int r;
while(a%b)
{
r=a%b;
a=b;
b=r;
}
return b;
}
int main ()
{
int i,j;
freopen("indep.in","r",stdin);
freopen("indep.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&v[i]);
if(v[i]>maxim)
maxim=v[i];
}
for(i=1;i<=n;i++)
d[i][v[i]]=1;
for(i=1;i<=n;i++)
for(j=1;j<=maxim;j++)
{
d[i+1][cmmdc(j,v[i])]+=d[i][j];
d[i+1][j]+=d[i][j];
}
printf("%d\n",d[n][1]);
return 0;
}