Pagini recente » Borderou de evaluare (job #538723) | Cod sursa (job #3235615) | Cod sursa (job #3235824) | Cod sursa (job #651249)
Cod sursa(job #651249)
#include "stdio.h"
#include "malloc.h"
typedef unsigned int DWORD;
DWORD n,i,nr,sum,divizor,count,x,tmp;
FILE *f,*g;
int main()
{
f = fopen("ssnd.in","r");
fscanf(f,"%d",&n);
g = fopen("ssnd.out","w");
for(i =0; i<n;i++)
{
fscanf(f,"%d",&x);
if(x ==1)
{
fprintf(g,"0 0\n");
continue;
}
nr = 1;
sum = 1;
divizor = 2;
while(x!=1)
{
tmp = x;
count = 0;
while(x%divizor == 0)
{
count++;
x/=divizor;
}
nr*=count+1;
sum*=((tmp/x)*divizor-1)/(divizor-1);
divizor++;
}
fprintf(g,"%d %d\n",nr,sum%9973);
}
fclose(f);
fclose(g);
return 0;
}