Pagini recente » Cod sursa (job #1242704) | Cod sursa (job #3235462) | Cod sursa (job #3278356) | Cod sursa (job #469034) | Cod sursa (job #508378)
Cod sursa(job #508378)
#include <stdio.h>
#include <stdlib.h>
int N;
unsigned long t;
unsigned long divizori;
unsigned long sum;
FILE *in, *out;
void afiseaza(unsigned long t, unsigned long div, unsigned long sum)
{
fprintf(out,"%lu %d\n",div,sum);
}
void fetch(unsigned long t, int i, int k)
{
int max = t/2;
divizori = 2;
sum = 0;
sum += 1;
sum += t;
for ( ; i <= max ; i += k )
{
if (t%i == 0)
{
divizori += 1;
sum += i;
}
}
afiseaza(t,divizori,sum%9973);
}
int main()
{
in = fopen("ssnd.in","r");
out = fopen("ssnd.out","w");
fscanf(in,"%d",&N);
int i;
for (i=0; i<N; i++)
{
fscanf(in,"%lu",&t);
if (t%2 == 0)
fetch(t,2,1);
else
fetch(t,3,2);
}
return 0;
fclose(in);
fclose(out);
}