Pagini recente » Cod sursa (job #312309) | Cod sursa (job #1800372) | Cod sursa (job #2838177) | Cod sursa (job #529127) | Cod sursa (job #775860)
Cod sursa(job #775860)
#include<fstream>
using namespace std;
int n,v[510],d[510][1010][12],m=000000000;
int cmmdc(int x,int y)
{
if(y==0) return x;
return cmmdc(y,x%y);
}
int main()
{
fstream in,out;
int i,j,x;
in.open("indep.in",ios::in);
out.open("indep.out",ios::out);
in>>n;
for(i=1;i<=n;i++)
in>>v[i];
d[0][0][0]=1;
for(i=1;i<=n;i++)
{
for(j=0;j<=1000;j++)
for(k=0;k<=12;k++)
{
d[i][j][k]+=d[i-1][j][k];
while(d[i][j][k]>=10)
{
d[i][j][k]/=10;
d[i][j][k+1]++;
}
}
for(j=0;j<=1000;j++)
{
x=cmmdc(v[i],j);
for(k=1
d[i][x]+=d[i-1][j]
}
}
out<<d[n][1];
in.close();
out.close();
}