Cod sursa(job #523283)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 17 ianuarie 2011 17:53:14
Problema Suma si numarul divizorilor Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.9 kb
#include<fstream.h>
#include<iostream.h>
int test,u,nr;
long long n,t,s;
long k,i,j,l,q,r;
            
int main()
{ifstream f1("ssnd.in");
ofstream f2("ssnd.out");
f1>>test;
for(u=1;u<=test;u++)
     {f1>>n;
     i=2;
     t=n;
     s=1;
     nr=1;
     while(i<=t)
           {j=0;
           while(t%i==0)
                  {j++;
                  t/=i;
                  if(t==1)
                         {nr=nr*(j+1);
                         q=i+1;
                         for(r=1;r<j;r++)
                               q=q*i+1;
                         s*=q;}}
           if(j!=0&&t>1)
                  {nr=nr*(j+1);
                  q=i+1;
                  for(r=1;r<j;r++)
                         q=q*i+1;
                  s*=q;}
           i++;}
     if(s==1)
           {nr=2;
           s+=n;}
     f2<<nr<<" "<<s%9973<<endl;}
f1.close();
f2.close();
return 0;}