Cod sursa(job #1296528)

Utilizator radu_uniculeu sunt radu radu_unicul Data 21 decembrie 2014 12:01:25
Problema Suma si numarul divizorilor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.4 kb
#include<fstream>
#include<math.h>
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
short int t,nrd,i,x;
int j,k;
long long int a,s;
bool prime[100000];
int main(){
            fin>>t;
            prime[1]=1;
            for(j=2;j<=100000;j++)
                for(k=2;k<=100000/j;k++) prime[j*k]=1;
            for(i=0;i<t;i++){
                                fin>>a;
                                s=0;
                                x=0;
                                nrd=1;
                                for(j=2;j<=a;j++) if(prime[j]==0) {
                                                                            x=0;
                                                                            while(a%j==0){
                                                                                            x++;
                                                                                            a=a/j;
                                                                                            s=s+j;
                                                                                        }
                                                                            nrd=nrd*(x+1);
                                                                            }
                                fout<<s<<" "<<nrd<<"\n";
                            }
            }