Cod sursa(job #532483)

Utilizator loginLogin Iustin Anca login Data 11 februarie 2011 19:53:20
Problema Indep Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
# include <fstream>
# include <iostream>
# define DIM 503
using namespace std;
int n, v[DIM];
long long sol[2*DIM];

int cmmdc (int x, int y)
{
	int r;
	do{
		r=x%y;
		x=y;
		y=r;
	}
	while (r);
	return x;
}

int main ()
{
	int m=0;
	ifstream fin ("indep.in");
	ofstream fout ("indep.out");
	fin>>n;
	for(int i=1;i<=n;++i)
	{
		fin>>v[i];
		if (v[i]>m)
			m=v[i];
	}
	for(int i=1;i<=n;++i)
	{
		for(int j=1;j<=m;++j)
			if (v[i]!=j && sol[j])
				sol[cmmdc(v[i],j)]+=sol[j]*(sol[v[i]]+1);
		++sol[v[i]];
	}
	fout<<sol[1];
	return 0;
}