Cod sursa(job #715884)

Utilizator miu_mik93FMI - Paduraru Miruna miu_mik93 Data 17 martie 2012 21:35:01
Problema Suma si numarul divizorilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include<iostream>
#include<math.h>
#include<fstream>
#include<string.h>
#include<stdio.h>
#define M 9973
const int MOD = 9973;
using namespace std;
void function()
{
	int n,d,nr_div = 1,suma = 1;
	scanf("%d", &n);
	for(d = 2; n > 1 ; d++)
	{
		if(d*d > n)
			break;
		if(n % d)
			continue;
		int produs = 1,div = 0,s = 1;
		while(n % d == 0)
		{
			produs = produs * d;
			s = s + produs;
			n = n / d;
			div++;
		}
		nr_div = nr_div * (div + 1);
		suma = suma * s;
		suma = suma % MOD;
	}
	if(n != 1)
	{
		nr_div *= 2;
		suma = suma * (n+1) % MOD;
	}
	printf("%d %d\n",nr_div,suma);
}
int main()
{
	int t;
	freopen("ssnd.in", "r", stdin);
	freopen("ssnd.out", "w", stdout);
	scanf("%d", &t);
	while(t--)
		function();
	fclose(stdin);
	fclose(stdout);
	return 0;
}