Pagini recente » Cod sursa (job #1460224) | Cod sursa (job #941912) | Cod sursa (job #401435) | Cod sursa (job #251211) | Cod sursa (job #1004520)
#include <fstream>
using namespace std;
const int Nmax = 505;
int N, v[ Nmax ],cmdc[ Nmax ],sols[ Nmax ];
int ans = 0;
int cmmdc (int a,int b)
{
if(b)return cmmdc (b,a%b);
return a;
}
int main()
{
ifstream fin("indep.in");
ofstream fout("indep.out");
fin >> N;
for(int i=1;i<=N;++i)
fin>>v[i];
cmdc[1] = v[1];
for(int i=2;i<=N;++i)
{
cmdc[i] = cmmdc(cmdc[i-1],v[i]);
sols[cmdc[i]] ++;
}
for(int i=1;i<=N;++i)
ans += sols[i]*(sols[i]+1)/2;
fout<<ans;
return 0;
}