Pagini recente » Cod sursa (job #2319029) | Monitorul de evaluare | Cod sursa (job #1464476) | Cod sursa (job #2953295) | Cod sursa (job #1233681)
#include <stdio.h>
#define VALMAX 1000
long long d[VALMAX+1];
int cmmdc(int a, int b){
int r;
while(b!=0){
r=a%b;
a=b;
b=r;
}
return a;
}
int main(){
int n, i, x, j;
FILE *fin, *fout;
fin=fopen("indep.in", "r");
fout=fopen("indep.out", "w");
fscanf(fin, "%d", &n);
for(i=0; i<n; i++){
fscanf(fin, "%d", &x);
for(j=1; j<=VALMAX; j++){
d[cmmdc(x, j)]+=d[j];
}
d[x]++;
}
fprintf(fout, "%lld\n", d[1]);
fclose(fin);
fclose(fout);
return 0;
}