Pagini recente » Cod sursa (job #551037) | Cod sursa (job #2904199) | Cod sursa (job #1017839) | Cod sursa (job #812148) | Cod sursa (job #185110)
Cod sursa(job #185110)
#include <stdio.h>
//#include <mem.h>
#include <string.h>
int main(){
long n,x,k,i,j,l,d,a[2000001]={0},b[2000001]={0},aux;
long long s;
FILE*in = fopen("sum.in","r");
FILE*out = fopen("sum.out","w");
fscanf (in,"%ld", &n);
for (i=1;i<=n;i++){
fscanf (in, "%ld", &x);
aux = x;
for (j=1;j<=2*x;j++)
b[j] = a[j] = 0;
d = 2;k = 0;s = 0;
while (aux > 1){
if (aux % d == 0){
a[++k] = d;
while (aux % d == 0) aux /= d;
}
d++;
}
for (j=1;j<=k;j++)
for (l=1;a[j]*l<=2*x;l++)
b[a[j]*l] = 1;
for (l=1;l<=2*x;l++)
if (!b[l]) s += l;
fprintf (out, "%lld\n", s);
}
return 0;
}