Cod sursa(job #495729)

Utilizator taseTanase Alexandru tase Data 26 octombrie 2010 19:20:06
Problema Indep Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>
int cmmdc(int a, int b)
{
	int r;
	while(b)
	{
		r=a%b;
		a=b;
		b=r;
	}
	return a;
}
int main()
{
	freopen("indep.in","r",stdin);
	freopen("indep.out","w",stdout);
	int n,i,j,v[502],a[502][1002],d;
	scanf("%d",&n);
	for(i=1;i<=n;++i)
		scanf("%d",&v[i]);
	for(i=1;i<=n;++i)
	{
		for(j=1;j<=1000;++j) a[i][j]=a[i-1][j];
		for(j=1;j<=1000;++j)
		{
			d=cmmdc(v[i],j);
			a[i][d]+=a[i-1][j];
		}
		a[i][v[i]]++;
	}
	printf("%d",a[n][1]);
	return 0;
}