Cod sursa(job #494971)
| Utilizator | Data | 23 octombrie 2010 15:20:39 | |
|---|---|---|---|
| Problema | Indep | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<fstream>
using namespace std;
ifstream f("indep.in");
ofstream g("indep.out");
int a[501][1001],v[501],n;
int cmmdc(int x, int y)
{
int r;
while(x*y)
{
r=x%y;
x=y;
y=r;
}
return x;
}
int main()
{
int i,j;
f>>n;
for(i=1;i<=n;i++)
{
f>>v[i];
a[i][v[i]]=1;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=1000;j++)
a[i][cmmdc(v[i],j)]+=a[i-1][j];
for(j=1;j<=1000;j++)
a[i][j]+=a[i-1][j];
}
g<<a[n][1];
return 0;
}
