Cod sursa(job #752044)

Utilizator jolgauSecret Fidel jolgau Data 27 mai 2012 17:55:32
Problema Sum Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.17 kb
#include<cstdio>
#include<iostream>
using namespace std;

FILE *f = fopen("sum.in","r");
FILE *g = fopen("sum.out","w");

int main()
{
int n,x,div[800],k,i,cp,j,l,rez;
long long int s;
int ind;
fscanf(f,"%d",&n);
for(i=1; i<=n; i++)
    {
     fscanf(f,"%d",&x);
     k=0;

     //Descompunerea nr in factori primi
     ind = 2;
     cp = x;
     int ok=0;
     while(cp != 1)
           {
            //cout<<cp<<" ";
            if(cp % ind == 0)
               {
                cp/=ind;
                if(ok == 0)
                   {
                    k++;
                    div[k] = ind;
                   }
                ok = 1;
               }
            else
               {
                ok = 0;
                ind++;
               }
           }

     //Calculare suma
     s=1;
     rez = 2*x;
     for(l=2; l<=rez; l++)
         {
          ok = 0;
          for(j=1; j<=k; j++)
              if(l % div[j] == 0){
                 ok = 1;
                 break;
                }
          if(ok == 0)
             s+=l;
         }
      fprintf(g,"%lld\n",s);
    }

fclose(f);
fclose(g);
return 0;
}